EA和自动交易

//======以下是控時可下單時間的程式=============================================== MqlDateTime stm; TimeLocal(stm); if(((stm.day_of_week==1||stm.day_of_week==2||stm.day_of_week==3||stm.day_of_week==4||stm.day_of_week==5) && stm.hour>=14 && stm.hour<=22)) //以上是控制在14:00 至 23:00
刚刚开始学mql5,经常碰到难题,有一些可以通过搜索Google之类的解决,但有一些想破头也不知道为什么,觉得特别需要一个有经验的人在这个时候出现,给一些指导。我本人很宅,不怎么认识会mql5的。坛子里很多软件编程的人,你们是怎么走过当初的瓶颈的呢?真心需要这样的老师,耐心一些,且愿意分享。我从未接触过编程。自学了一阵子,非常皮毛,但真心想学习。虽然遇到很多困难,就是不想放弃。自以为,以交易为生的话,编程是交易的非常重要的工具,所以强迫自己一定要学会。所以,很希望找个老师,在我遇到难题,实在想不出来的时候,给予一些帮助和知道,非常欢迎一个喜欢分享的你。
void OnStart () { //--- MqlTradeRequest request={ 0 }; MqlTradeResult result={ 0 }; request.action = TRADE_ACTION_DEAL ; request.symbol = Symbol (); request.volume = 2 ; request.type = ORDER_TYPE_BUY ; request.price = SymbolInfoDouble ( Symbol (), SYMBOL_ASK );
在EA回测中,有些自己制定的值,能否在图表中生成这个线,看不到这个线,很多值都不知道是正确还是错误的,类似TB开拓者 PlotNumeric 功能 谢谢
//+------------------------------------------------------------------+ //| MyEMA.mq4 | //| Copyright 2021, MetaQuotes Software Corp. | //| https://www.mql5.com | //+------------------------------------------------------------------+
我按照 教程 针对初学者以 MQL5 编写“EA 交易”的分步指南 - MQL5文章 输入完了所有代码,但是用历史数据回测的时候却没有一笔交易?? 请问大佬是什么原因 代码如下 //+------------------------------------------------------------------+ //| 20210610_EA01.mq5 | //| Copyright 2021, MetaQuotes Ltd. | //|
代码如下: MqlTradeRequest request; MqlTradeResult result; request.action=TRADE_ACTION_DEAL; request.symbol=Symbol(); request.type=ORDER_TYPE_BUY; request.volume=0.01; request.deviation=30; request.type_filling=ORDER_FILLING_IOC; request.type_time=ORDER_TIME_DAY;
有时会重复开单 于是就想用bars判定一下 但是不行 用itime也不行 我记得mt4用time[0]就可以 不知道错在哪里 请高手指点一下啊 谢谢 int dd=0; int bars=Bars(_Symbol,_Period); if(PositionsTotal()==0) { if(dd!=bars && ....................... ) { buy(); dd=bars; }
  反向跟单  (1)
如题,哪位大佬可以分享一下反向跟单的程序或者指教一下?谢谢
我想來寫一個EA 多國貨幣的 不知道可不可行否? 有沒有可以提供一些線索的人可以提供我參考看看的人呢
问题提示:MqlTradeRequest request={0}; 上周还好好的,这周执行脚本,两台电脑的账号下单子执行,都提示:cannot convert 0 to enum 'ENUM_TRADE_REQUEST_ACTIONS' 请问大家有没有遇到这个问题,怎么解决的?
void OnStart() { //--- 声明并初始化交易请求和交易请求结果 MqlTradeRequest request={0}; MqlTradeResult result={0}; //--- 请求的参数 request.action =TRADE_ACTION_DEAL; // 交易操作类型 request.symbol =Symbol(); // 当前交易品种 request.type =ORDER_TYPE_BUY; // 订单类型 request.volume =0.1; //
是我哪里设置的有什么问题么,求大神帮帮我,我在mt4 上用ea测试比特币历史走势,但是ea不下达订单是什么情况,就一直干跑行情。
请教下,再开了多张订单后,达到止盈后先平空,后平多,虽然也是全平了,但是如果波动快,极有可能平完空单后,多单仓位重是如果一个快速回撤,本来止盈的单子变成亏损单子了,所以请教下可以实现所有订单同步全平的操作吗?非常感谢
你好,我刚刚开始学习EA。外汇也是刚刚开始,还没有实战。 我在网上听说单均线交易是一个期望值为正的交易系统。我觉得可以练一下手。就做了一个EA。 结果测试表现特别差。 我的思路是这样的。取一个20周期的均线(SMA)。当价格从下向上突破是买入,当价格从上往下突破时卖出。 在买入,卖出之前是要把前面的订单平掉。不设定止损。 在1H,4H,1D上测试,结果都很不理想。(时间段:2010年-2020年,品种:EURUSD) 我想知道的是:价格从下向上突破均线的准确含义是什么? 我做了两种判断逻辑。 1是前一个蜡烛柱的最高值低于均线值 &&
請教各位大大,進行EA測試時,左上顯示 SLLSTOP order stopped since time is outside of trading hours 請問是什麼問題呢
mt5平台,使用文档里面ordersend函数在一个平台可以正常下单,换一个平台下单后gelasterror返回4756(交易需求发送失败),结构体里面返回码10030(无效字节填满)。 有谁知道这个怎么解决吗。 下单使用的也是文档中提供的例子。 感谢大佬提供的方法,加了这句就可以了request.type_filling=ORDER_FILLING_IOC;
请问一下各位大神。我的需求如题。我要判断是否尾仓位来确定是否对其进行EA的操作?有什么办法区分
我想实现一个功能。就是闭市期间不执行EA. 比如HK50指数 在中午和下午会有阶段性的闭市。周末有的平台可以交易虚拟货币,但是其他货币对和黄金原油是闭市的,但是仍然有持仓。 这样处理持仓的ea会不断发送请求。然后处理失败。 有这样的函数可以判断symbol 是否在交易时间内吗?还是只能自己定义时间来实现这个功能。
新人小白刚学习EA 写好的EA,编写显示0错误,但是回到mt4交易端点击自动交易以后,页面底部的英文EA也点击了,但是我写好的EA打印不出来。
I have one .ex4 file,but can't put to mt4->Experts,if do it,restart later ,this ex4 has deleted,i can how todo
无论是下单还是修订单执行返回的都是 4752 代码,从帮助文档中可以看到4752对应的是 “EA禁止交易”,但没不清楚为什么会被禁止,问题到底出现在哪里!小弟刚上手学习EA,还望看到问题的大神能帮忙解答,指点迷津
请教一下 ea提示 ORDER BUY STOP 130这个应该怎么解决 是什么导致的 谢谢各位
  mql5 双精度失真问题  (12   1 2)
//---lotsTest (EURUSD,H1) 0.9399999999999999 Print(NormalizeDouble(1.88/2,2)); 1.88 除以2 。结果是 0.9399999999999999。 我的需求是计算现在仓位的一半。双精度失真的这个问题是怎么解决的?
//+------------------------------------------------------------------+ //| ChartEvent function | //+------------------------------------------------------------------+ void OnChartEvent(const int id, const long &lparam, const double &dparam, const string &sparam) { if (id== CHARTEVENT_OBJECT_DRAG )
用了好几个品牌的 好像都不行   刷GOOGLE的PLAY后  听说还得翻墙?? 有谁用过支持推送通知的手机 能否告知一下
如下是我做单条件 double mod=NormalizeDouble(MathMod(Close[1],0.005),5); if(mod<=0.0044&&mod>0.004) {Alert("做空单");} if(mod<0.001&&mod>=0.0006) {Alert("做多单");} 策略测试时,当 mod 不在这个做单范围也会做单,是什么原因?有解决方法吗? 还是就是如何提高复盘模型的质量?
不想让平台看到自己的挂单点位和订单止损盈利,希望可以实现到点位自动减仓的工具,分享的给红包呀
使用OrdersTotal()在EA中调用订单的信息,挂单的可以被返还,但已成交的无法返还。 如下调用: input long my_magic=555;//+------------------------------------------------------------------+//| 脚本程序起始函数 |//+------------------------------------------------------------------+void...