初学者的问题 MQL5 MT5 MetaTrader 5 - 页 508 1...501502503504505506507508509510511512513514515...1503 新评论 Nickolay72 2016.01.31 21:59 #5071 我附加了一个马丁格尔。 在一天中,我以这种形式附加了专家顾问(它已经做了几笔相同的EA交易,但之前处于未完成的状态), - EA工作正常,马丁格尔工作,在加上半天的损失。 第二天,我在早上打开平台,去工作,在晚上 - 一笔交易。 马丁格尔对亏损的交易增加手数,否则 - 标准手。void OnTick() { datetime EaStartTime = StringToTime(StartTime); // время начала работы советника datetime EaEndTime = StringToTime(EndTime); // время окончания работы советника datetime CurrTime = TimeCurrent(); // это если нужно взять время терминала if(CurrTime<EaStartTime || CurrTime>=EaEndTime) return; // если еще не время торговать - выход { MacdCurrent=iMACD(NULL,0,InpFastEMA,InpSlowEMA,InpSignalSMA,Macd_Applied_Price,MODE_MAIN,0); SignalCurrent=iMACD(NULL,0,InpFastEMA,InpSlowEMA,InpSignalSMA,Macd_Applied_Price,MODE_SIGNAL,0); SignalMAPrevious=iMA(NULL,0,InpMAPeriod,InpMAShift,InpMAMethod,MA_Applied_Price,1); SignalMAThis=iMA(NULL,0,InpMAPeriod,InpMAShift,InpMAMethod,MA_Applied_Price,0); SignalParabolic=iSAR(NULL,0,InpSARStep,InpSARMaximum,0); SignalStochastic_5=iStochastic(NULL,5,InpKPeriod,InpDPeriod,InpSlowing,MODE_SMA,0,1,0); MainStochastic_5=iStochastic(NULL,5,InpKPeriod,InpDPeriod,InpSlowing,MODE_SMA,0,0,0); SignalStochastic=iStochastic(NULL,0,InpKPeriod,InpDPeriod,InpSlowing,MODE_SMA,0,1,0); MainStochastic=iStochastic(NULL,0,InpKPeriod,InpDPeriod,InpSlowing,MODE_SMA,0,0,0); SignalCCIPrevious=iCCI(NULL,0,InpCCIPeriod,0,1); SignalCCIThis=iCCI(NULL,0,InpCCIPeriod,0,0); if(CountTrades()==0) CheckForOpen(); } } //+------------------------------------------------------------------+ //| | //+------------------------------------------------------------------+ void CheckForOpen() {if(ModLots()) { //-----Ставим ордер на покупку. if(SignalCurrent<MacdCurrent && SignalMAPrevious<SignalMAThis && Ask>SignalParabolic && SignalStochastic_5<MainStochastic_5&&SignalStochastic<MainStochastic&& SignalCCIPrevious<SignalCCIThis) { ticket=OrderSend(NULL,OP_BUY,lot,Ask,slippage,0,0,exptime,magic,0,Blue); if(ticket>0) return; } //-----Ставим ордер на продажу. if(SignalCurrent>MacdCurrent && SignalMAPrevious>SignalMAThis && Bid<SignalParabolic && SignalStochastic_5>MainStochastic_5&&SignalStochastic>MainStochastic&& SignalCCIPrevious>SignalCCIThis) { ticket=OrderSend(NULL,OP_SELL,lot,Bid,slippage,0,0,exptime,magic,0,Red); if(ticket>0) return; } } } //+------------------------------------------------------------------+ int CountTrades() { int count=0; for(int i=OrdersTotal()-1;i>=0;i--) { if(OrderSelect(i,SELECT_BY_POS,MODE_TRADES)) { if(OrderSymbol()==Symbol() && OrderMagicNumber()==magic) count++; } } return(count); } //+------------------------------------------------------------------+ bool ModLots() { for(int i=OrdersHistoryTotal()-1;i>=0;i--) { if(!OrderSelect(i,SELECT_BY_POS,MODE_HISTORY)) continue; if((OrderMagicNumber()==magic) && (OrderSymbol()==Symbol())) { if(OrderProfit()<0) {lot=OrderLots()*LotMarti; break;} else { lot=Lots; break;} } } return(true); } //+------------------------------------------------------------------+ Maks_Knyazev 2016.01.31 22:16 #5072 你好。mql4手册中说,策略测试器中不支持Timer和ChartEvent事件处理。相应地,按钮(OBJ_BUTTON)不工作(更确切地说,当你点击时,什么也没有发生)。然而,由于某些原因,该 EA的试用版并不支持这一规则。请告诉我为什么会发生这种情况,如何使测试器中的按钮工作? Alexey Volchanskiy 2016.02.01 01:06 #5073 Maks_Knyazev: 你好。mql4手册中说,策略测试器中不支持Timer和ChartEvent事件处理。相应地,按钮(OBJ_BUTTON)不工作(更确切地说,当你点击时,什么也没有发生)。然而,由于某些原因,该 EA的试用版并不支持这一规则。请告诉我为什么会发生这种情况,如何使测试器中的按钮工作?是的,它们不起作用。你必须在测试器中手动检查这些按钮,像这样CButton *cbSell, *cbBuy; //проверяем из OnTick в тестере void CheckButtons() { if(cbSell.Pressed()) { OpenOrderWithCheck2(Symbol(), OP_SELL, 0.1, Bid, 50, 0, 0, "", 1, 0, clrDeepSkyBlue); cbSell.Pressed(false); } if(cbBuy.Pressed()) { OpenOrderWithCheck2(Symbol(), OP_BUY, 0.1, Bid, 50, 0, 0, "", 1, 0, clrRed); cbBuy.Pressed(false); } ChartRedraw(); } Maks_Knyazev 2016.02.01 10:19 #5074 Alexey Volchanskiy:是的,它们不起作用。在测试器中,你必须手动检查这些按钮,像这样 非常感谢您!是否有任何文献描述这种事情? Vladimir Karputov 2016.02.01 10:26 #5075 flint17480, 2016.02.01 08:58你好。在欧元兑美元的09-47分钟蜡烛上没有关闭利润,利润是在1.08428,蜡烛升至1.08420。该怎么做?提前感谢。 Vladimir Karputov 2016.02.01 10:30 #5076 <br / translate="no"> flint17480, 2016.02.01 08:58你好。我在09-47的时候失去了欧元兑美元的利润,它在1.08428,然后涨到了1.08420。你能告诉我该怎么做吗?提前感谢。需要更多信息。未结头寸的类型:卖出还是买入?你知道终端的价格是由BID绘制的吗? Yury Reshetov 2016.02.01 16:46 #5077 Karputov Vladimir:flint17480, 2016.02.01 08:58你好。在欧元兑美元的09-47分钟蜡烛上没有关闭利润,利润是在1.08428,蜡烛升至1.08420。该怎么做?预先感谢你。你应该注意价差,因为空头在Asc时被关闭,而蜡烛图在Bid时被画出。对于大多数货币对来说,5位数的点差超过8点是正常的。 Alexey Volchanskiy 2016.02.01 16:58 #5078 Karputov Vladimir:flint17480, 2016.02.01 08:58你好。在欧元兑美元的09-47分钟蜡烛上没有关闭利润,利润是在1.08428,蜡烛升至1.08420。该怎么做?预先感谢你。 勾选要写的引言。要我把我的报价发给你吗?虽然在kodobaz有很多这样的人。你对传播的看法是正确的。 Tema97 2016.02.02 08:21 #5079 大家下午好)分享移动止损 的代码--推动价格))))预先感谢 [删除] 2016.02.02 13:01 #5080 Tema97: 大家下午好)分享移动止损 的代码--推动价格))))提前感谢。 你为什么不喜欢追踪止损?它已经内置于终端中 1...501502503504505506507508509510511512513514515...1503 新评论 原因: 取消 您错过了交易机会: 免费交易应用程序 8,000+信号可供复制 探索金融市场的经济新闻 注册 登录 拉丁字符(不带空格) 密码将被发送至该邮箱 发生错误 使用 Google 登录 您同意网站政策和使用条款 如果您没有帐号,请注册 可以使用cookies登录MQL5.com网站。 请在您的浏览器中启用必要的设置,否则您将无法登录。 忘记您的登录名/密码? 使用 Google 登录
你好。mql4手册中说,策略测试器中不支持Timer和ChartEvent事件处理。相应地,按钮(OBJ_BUTTON)不工作(更确切地说,当你点击时,什么也没有发生)。然而,由于某些原因,该 EA的试用版并不支持这一规则。请告诉我为什么会发生这种情况,如何使测试器中的按钮工作?
是的,它们不起作用。你必须在测试器中手动检查这些按钮,像这样
是的,它们不起作用。在测试器中,你必须手动检查这些按钮,像这样
flint17480, 2016.02.01 08:58
你好。在欧元兑美元的09-47分钟蜡烛上没有关闭利润,利润是在1.08428,蜡烛升至1.08420。该怎么做?提前感谢。flint17480, 2016.02.01 08:58
你好。我在09-47的时候失去了欧元兑美元的利润,它在1.08428,然后涨到了1.08420。你能告诉我该怎么做吗?提前感谢。需要更多信息。
flint17480, 2016.02.01 08:58
你好。在欧元兑美元的09-47分钟蜡烛上没有关闭利润,利润是在1.08428,蜡烛升至1.08420。该怎么做?预先感谢你。你应该注意价差,因为空头在Asc时被关闭,而蜡烛图在Bid时被画出。对于大多数货币对来说,5位数的点差超过8点是正常的。
flint17480, 2016.02.01 08:58
你好。在欧元兑美元的09-47分钟蜡烛上没有关闭利润,利润是在1.08428,蜡烛升至1.08420。该怎么做?预先感谢你。大家下午好)分享移动止损 的代码--推动价格))))提前感谢。