初学者的问题 MQL5 MT5 MetaTrader 5 - 页 323 1...316317318319320321322323324325326327328329330...1503 新评论 Roman Shiredchenko 2014.11.28 14:44 #3221 也就是说,按照我的理解,当收到这个打印后的数据时和日志中的信息 Wait Data for GBPUSD 测试是按照算法进行的吗? Andrey Miguzov 2014.11.28 15:33 #3222 R0MAN:也就是说,按照我的理解,当收到这个打印后的数据时和日志中的信息测试是按照算法进行的吗? 这条线是在哪个函数中?如果是在OnInit()中 - 那么在这一行之后,下面的所有内容都不会工作...OnCalculate() 开始工作。我正在用未完全初始化的GBPUSD指标进行测试。 Igor Safonov 2014.11.28 16:09 #3223 大家好,我把#property strict指令放了 进去,弹出了4个错误。2、3、5、8行的错误如果(CloseFriday == TRUE && DayOfWeek() == 5 && TimeCurrent() >= StrToTime(CloseFridayHour + ":00") )返回(0)。op = NormalizeDouble(Bid,Digits)。tp = NormalizeDouble(Bid - (TakeProfit)*Point,Digits)。如果(TakeProfit==0)tp=0。sl = NormalizeDouble(Bid + (StopLoss)*Point,Digits)。如果(StopLoss==0)sl=0。CalcLot()。Ticket=OrderExists(OP_SELL);如果(Ticket<MaxTrades && OrderSymbol()==Symbol())如果(Ticket==-1) Questions from Beginners MQL5 新人对MQL4和MQL5的任何问题,对算法和代码的帮助和讨论 错误、漏洞、问题 Roman Shiredchenko 2014.11.28 16:16 #3224 MigVRN: 但它应该在哪条线上?如果它在OnInit()中 - 它下面的所有东西都不会工作...OnCalculate()开始工作。我们正在用未完全初始化的GBPUSD指标进行测试。明白了。谢谢你。这以前没有发生过...OnCalculate() 开始工作了。//------------------------------------------------------------------ OnInit int OnInit() { SetIndexBuffer(0, Mediana, INDICATOR_DATA); ArraySetAsSeries(Mediana, true); // задали имена валют ... //------------------------------------------------------------------ OnCalculate int OnCalculate(const int rates_total, const int prev_calculated, const datetime& time[], const double& open[], const double& high[], const double& low[], const double& close[], const long& tick_volume[], const long& volume[], const int& spread[]) { for (int i=0; i<6; i++) if (Pair[i].CopyBuf(nBars)<0) { Print("Wait Data for "+Pair[i].m_name); return(0); } // получили данные из МА в буфера // при ошибке выходим int limit=rates_total-prev_calculated; if (limit>=rates_total) limit=rates_total-1; // ограничили на таймсерию if (limit>nBars) limit=nBars; // ограничили на число скопированных данных for(int i=0; i<limit; i++) // проходим по треубемому промежутку и расчитываем медиану { N0mad 2014.11.28 18:18 #3225 亲爱的论坛用户下午好。你能告诉我周期不重复的原因吗?提前感谢。//+-------------------Переменные MACD--------------------------------+ extern int fast_ema_period=12; // период быстрой средней extern int slow_ema_period=26; // период медленной средней extern int signal_period=9; // период усреднения разности extern int shift_MACD=0; // сдвиг индикатора MACD //+-------------------Переменные DeM---------------------------------+ extern int DeM_period=14; // период усреднения extern double levelUP=0.7; // верхний уровень extern double levelDONE=0.3; // нижний уровень extern int shift_DeM=0; // сдвиг индикатора DeM //+-------------------Общие переменные-------------------------------+ extern int Magic=7770000; // магический номер extern double Lot=0.01; // размер лота extern int slippage=4; // проскальзывание цены extern int SL=150; // СтопЛосс extern int TP=300; // ТейкПрофит int kolpos=0; // количество позиций советника //+------------------------------------------------------------------+ //| Старт советника | //+------------------------------------------------------------------+ int start() { double MAIN=iMACD(Symbol(),0,fast_ema_period,slow_ema_period,signal_period,PRICE_CLOSE,MODE_MAIN,shift_MACD); double SIGNAL=iMACD(Symbol(),0,fast_ema_period,slow_ema_period,signal_period,PRICE_CLOSE,MODE_SIGNAL,shift_MACD); double DeMval=iDeMarker(Symbol(),0,DeM_period,shift_DeM); //--- for (int pos=0; pos<OrdersTotal(); pos++) { OrderSelect(pos,SELECT_BY_POS,MODE_TRADES); if (OrderSymbol()==Symbol()&&OrderMagicNumber()==Magic) kolpos++; } if(kolpos==0) { if(MAIN>0&&SIGNAL>0&&SIGNAL>MAIN&&DeMval>levelUP) OrderSend(Symbol(),OP_SELL,Lot,Bid,slippage,Bid+SL*Point,Bid-TP*Point,NULL,Magic,0,clrBlue); if(MAIN<0&&SIGNAL<0&&SIGNAL<MAIN&&DeMval<levelDONE) OrderSend(Symbol(),OP_BUY,Lot,Ask,slippage,Ask-SL*Point,Ask+TP*Point,NULL,Magic,0,clrRed); } //--- return(0); } [删除] 2014.11.28 18:48 #3226 N0mad:亲爱的论坛用户下午好。你能告诉我周期不重复的原因吗?提前感谢。 晚上好。把变量kolpos放在start()的主体中。 N0mad 2014.11.28 18:59 #3227 Tapochun: 晚上好。把变量kolpos放在start()的主体中。 谢谢你的及时答复。非常有帮助。 Alexey Kravchenko 2014.11.29 06:54 #3228 大家好!情况是这样的。该专家顾问在TF M15上工作。同时,我不能复制较早的TFs的价格数据(例如CopyHigh(Symbol,PERIOD_D1,0,period,Hi_array) )。不能复制超过一年的时间。一般来说,这并不奇怪,因为同步结果显示大约有2.5万条15M,正好是一年的时间。我怎样才能获得较长时期的数据?我应该把它同步到D1还是有其他方法? valera5111 2014.11.29 18:13 #3229 metatrader4 745build,如何插入以前版本的脚本,脚本不工作。 Vladimir Karputov 2014.11.30 03:40 #3230 valera5111: Metatrader4 745build,如何插入以前版本的脚本,脚本不起作用请说明你到底想做什么?在指标或专家顾问中插入 脚本代码编译脚本代码 描述发生了什么错误(编译时,查看 "错误 "标签,在终端启动时,查看 "专家 "标签)。 1...316317318319320321322323324325326327328329330...1503 新评论 您错过了交易机会: 免费交易应用程序 8,000+信号可供复制 探索金融市场的经济新闻 注册 登录 拉丁字符(不带空格) 密码将被发送至该邮箱 发生错误 使用 Google 登录 您同意网站政策和使用条款 如果您没有帐号,请注册 可以使用cookies登录MQL5.com网站。 请在您的浏览器中启用必要的设置,否则您将无法登录。 忘记您的登录名/密码? 使用 Google 登录
也就是说,按照我的理解,当收到这个打印后的数据时和日志中的信息
Wait Data for GBPUSD
测试是按照算法进行的吗?
也就是说,按照我的理解,当收到这个打印后的数据时和日志中的信息
测试是按照算法进行的吗?
2、3、5、8行的错误
如果(CloseFriday == TRUE && DayOfWeek() == 5 && TimeCurrent() >= StrToTime(CloseFridayHour + ":00") )返回(0)。
op = NormalizeDouble(Bid,Digits)。
tp = NormalizeDouble(Bid - (TakeProfit)*Point,Digits)。
如果(TakeProfit==0)tp=0。
sl = NormalizeDouble(Bid + (StopLoss)*Point,Digits)。
如果(StopLoss==0)sl=0。
CalcLot()。
Ticket=OrderExists(OP_SELL);
如果(Ticket<MaxTrades && OrderSymbol()==Symbol())
如果(Ticket==-1)
但它应该在哪条线上?如果它在OnInit()中 - 它下面的所有东西都不会工作...OnCalculate()开始工作。我们正在用未完全初始化的GBPUSD指标进行测试。
明白了。谢谢你。这以前没有发生过...
OnCalculate() 开始工作了。
亲爱的论坛用户下午好。
你能告诉我周期不重复的原因吗?
提前感谢。
亲爱的论坛用户下午好。
你能告诉我周期不重复的原因吗?
提前感谢。
晚上好。把变量kolpos放在start()的主体中。
大家好!
情况是这样的。
该专家顾问在TF M15上工作。
同时,我不能复制较早的TFs的价格数据(例如CopyHigh(Symbol,PERIOD_D1,0,period,Hi_array) )。
不能复制超过一年的时间。一般来说,这并不奇怪,因为同步结果显示大约有2.5万条15M,正好是一年的时间。
我怎样才能获得较长时期的数据?我应该把它同步到D1还是有其他方法?
Metatrader4 745build,如何插入以前版本的脚本,脚本不起作用
请说明你到底想做什么?
- 在指标或专家顾问中插入 脚本代码
- 编译脚本代码
描述发生了什么错误(编译时,查看 "错误 "标签,在终端启动时,查看 "专家 "标签)。