错误、漏洞、问题 - 页 809 1...802803804805806807808809810811812813814815816...3184 新评论 Stanislav Korotky 2012.08.14 07:40 #8081 回到在OnTradeTransaction事件中确定止损和止盈的问题。我有以下日志输出结构的所有字段(取自MetaQuotes的例子),这不再是一个测试者,而是一个在线竞争。这里我们有一个买点。ON 0 transaction (EURUSD,H1) 11:14:23 OrderSendWrapper:0.10 EURUSD BUY JK 0 transaction (EURUSD,H1) 11:14:23 _OrderSend price=1.23575 vol=0。10 GM 0 交易 (EURUSD,H1) 11:14:24 TRADE_TRANSACTION_REQUEST OH 0 交易 (EURUSD,H1) 11:14:24 ------------RequestDescription PK 0 交易 (EURUSD,H1) 11:14:24 TRADE_ACTION_DEAL DJ 0 交易 (EURUSD,H1) 11:14:24 Symbol: EURUSD FN 0 交易 (EURUSD,H1) 11:14:24 Magic Number。0 PD 0个交易 (EURUSD,H1) 11:14:24 Order ticket: 11670896 PL 0个交易 (EURUSD,H1) 11:14:24 Order type: ORDER_TYPE_BUY JF 0个交易 (EURUSD,H1) 11:14:24 Order filling: ORDER_FILLING_FOK FM 0个交易 (EURUSD,H1) 11:14:24 Order time type: ORDER_TIME_GTC NG 0个交易 (EURUSD,H1) 11:14:24 Order expiration: 1970.01.01 00:00:00 HI 0 transactions (EURUSD,H1) 11:14:24 Price: 1.23579 EG 0 transactions (EURUSD,H1) 11:14:24 Deviation points: 10 DR 0 transactions (EURUSD,H1) 11:14:24 Stop Loss: 1.2354 PJ 0 transaction (EURUSD,H1) 11:14:24 Take Profit: 1.2361 ON 0 transaction (EURUSD,H1) 11:14:24 Stop Limit: 0 MK 0 transaction (EURUSD,H1) 11:14:24 Volume: 0.1 IQ 0 交易 (EURUSD,H1) 11:14:24 评论:FG 0 交易 (EURUSD,H1) 11:14:24 MF 0 交易 (EURUSD,H1) 11:14:24 ------------ResultDescription JL 0 交易 (EURUSD,H1) 11:14。24 Retcode 10009 ME 0 transaction (EURUSD,H1) 11:14:24 Request ID: 1 RL 0 transaction (EURUSD,H1) 11:14:24 Order ticket: 11670896 NK 0 transaction (EURUSD,H1) 11:14:24 Deal ticket: 10809619 QS 0 transaction (EURUSD,H1) 11:14:24 Volume: 0.1 LJ 0 交易 (EURUSD,H1) 11:14:24 价格:1.23579 RR 0 交易 (EURUSD,H1) 11:14:24 询问:1.23579 PI 0 交易 (EURUSD,H1) 11:14:24 买:1.23566 GE 0 交易 (EURUSD,H1) 11:14:24 评论:DS 0 交易 (EURUSD,H1) 11:14:24 GE 0 交易 (EURUSD,H1) 11:14:24 挂单票 11670896 LR 0 交易 (EURUSD,H1) 1114:24 LG 0个交易(EURUSD,H1) 11:14:24 ------------TransactionDescription FQ 0个交易(EURUSD,H1) 11:14:24 TRADE_TRANSACTION_ORDER_ADD HF 0个交易(EURUSD,H1) 11:14:24 标志。EURUSD HM 0笔交易 (EURUSD,H1) 11:14:24 交易票据: 0 DK 0笔交易 (EURUSD,H1) 11:14:24 交易类型: DEAL_TYPE_BUY DQ 0笔交易 (EURUSD,H1) 11:14:24 订单票据: 11670896 DI 0笔交易 (EURUSD,H1) 11:14:2424 订单类型: ORDER_TYPE_BUY CR 0 交易 (EURUSD,H1) 11:14:24 订单状态: ORDER_STATE_STARTED RI 0 交易 (EURUSD,H1) 11:14:24 订单时间类型: ORDER_TIME_GTC JS 0 交易 (EURUSD,H1) 11:14:24 订单到期时间: 1970。01.01 00:00 DE 0笔交易 (EURUSD,H1) 11:14:24 价格:1.23579 QN 0笔交易 (EURUSD,H1) 11:14:24 价格触发:0 PG 0笔交易 (EURUSD,H1) 11:14:24 止损:1.2354 LM 0笔交易 (EURUSD,H1) 11:14:24 获利:1.2361 EF 0笔交易 (EURUSD,H1) 11:14:24 数量:0。1 JI 0笔交易 (EURUSD,H1) 11:14:24 NS 0笔交易 (EURUSD,H1) 11:14:24 ------------TransactionDescription HH 0笔交易 (EURUSD,H1) 11:14:24 TRADE_TRANSACTION_ORDER_DELETE DR 0笔交易 (EURUSD,H1) 11:14:24 Symbol: EURUSD LJ 0笔交易 (EURUSD,H1) 11:14:24 Deal ticket: 0 PN 0篇交易 (EURUSD,H1) 11:14:24 Deal type:DEAL_TYPE_BUY PD 0 transaction (EURUSD,H1) 11:14:24 Order ticket: 11670896 PL 0 transaction (EURUSD,H1) 11:14:24 Order type: ORDER_TYPE_BUY NJ 0 transaction (EURUSD,H1) 11:11:14:24 订单状态: ORDER_STATE_FILLED PM 0 交易 (EURUSD,H1) 11:14:24 订单时间类型: ORDER_TIME_GTC HG 0 交易 (EURUSD,H1) 11:14:24 订单到期时间: 1970。01.01 00:00 JI 0次交易(EURUSD,H1) 11:14:24 价格:1.23579 OJ 0次交易(EURUSD,H1) 11:14:24 价格触发:0 NS 0次交易(EURUSD,H1) 11:14:24 止损:1。2354 JJ 0 交易 (EURUSD,H1) 11:14:24 止盈: 1.2361 FS 0 交易 (EURUSD,H1) 11:14:24 成交量: 0 HE 0 交易 (EURUSD,H1) 11:14:24 HN 0 交易 (EURUSD,H1) 11:14:24 ------------TransactionDescription FI 0 交易 (EURUSD,H1) 11:14:24 TRADE_TRANSACTION_HISTORY_ADD HN 0个交易(EURUSD,H1) 11:14:24 符号:EURUSD HE 0个交易(EURUSD,H1) 11:14:24 交易票据:0 DS 0个交易(EURUSD,H1) 11:11:14:24 交易类型: DEAL_TYPE_BUY DI 0笔交易 (EURUSD,H1) 11:14:24 订单票据: 11670896 DQ 0笔交易 (EURUSD,H1) 11:14:24 订单类型: ORDER_TYPE_BUY RF 0笔交易 (EURUSD,H1) 1114:24 订单状态: ORDER_STATE_FILLED LQ 0个交易(EURUSD,H1) 11:14:24 订单时间类型: ORDER_TIME_GTC DK 0个交易(EURUSD,H1) 11:14:24 订单到期时间: 1970。01.01 00:00 FM 0 交易 (EURUSD,H1) 11:14:24 价格:1.23579 CF 0 交易 (EURUSD,H1) 11:14:24 价格触发:0 RO 0 交易 (EURUSD,H1) 11:14:24 止损:1.2354 NE 0 交易 (EURUSD,H1) 11:14:24 获利:1。2361 RO 0 交易 (EURUSD,H1) 11:14:24 成交量: 0 DQ 0 交易 (EURUSD,H1) 11:14:24 DJ 0 交易 (EURUSD,H1) 11:14:24 ------------TransactionDescription LQ 0 交易 (EURUSD,H1) 11:14:24 TRADE_TRANSACTION_DEAL_ADD FK 0个交易(EURUSD,H1) 11:14:24 符号:EURUSD DR 0个交易(EURUSD,H1) 11:14:24 交易票据:10809619 PF 0个交易(EURUSD,H1) 11:14:24 交易类型: DEAL_TYPE_BUY PL 0 交易 (EURUSD,H1) 11:14:24 订单票: 11670896 PD 0 交易 (EURUSD,H1) 11:14:24 订单类型: ORDER_TYPE_BUY GN 0 交易 (EURUSD,H1) 11:11:14:24 订单状态: ORDER_STATE_STARTED FE 0个交易 (EURUSD,H1) 11:14:24 订单时间类型: ORDER_TIME_GTC NO 0个交易 (EURUSD,H1) 11:14:24 订单到期时间: 1970。01.01 00:00:00 HQ 0笔交易 (EURUSD,H1) 11:14:24 价格:1.23579 MR 0笔交易 (EURUSD,H1) 11:14:24 价格触发:0 LK 0笔交易 (EURUSD,H1) 11:14:24 止损:1.2354 HR 0笔交易 (EURUSD,H1) 11:14:24 获利:1.2361 QJ 0笔交易 (EURUSD,H1) 11:14:24 量:0.1 NR 0笔交易 (EURUSD,H1)在这里,它以获利收盘。DJ 0笔交易 (EURUSD,H1) 11:20:38 ------------TransactionDescription JN 0笔交易 (EURUSD,H1) 11:20:38 TRADE_TRANSACTION_ORDER_ADD DH 0笔交易 (EURUSD,H1) 11:20:38 符号:EURUSD PP 0笔交易 (EURUSD,H1) 11:20:38 交易票据:0 PH 0笔交易 (EURUSD,H1) 11:20:38 交易类型:DEAL_TYPE_BUY LR 0笔交易 (EURUSD,H1)20:38 Order ticket: 11670968 HG 0 transactions (EURUSD,H1) 11:20:38 Order type: ORDER_TYPE_SELL MO 0 transactions (EURUSD,H1) 11:20:38 Order state: ORDER_STATE_STARTED HF 0 transactions (EURUSD,H1) 11:20:38 Order time type: ORDER_TIME_GTC PN 0 transactions (EURUSD,H1) 11:20:38 Order expiration: 1970。01.01 00:00:00 JE 0 交易 (EURUSD,H1) 11:20:38 价格: 1.2361 MS 0 交易 (EURUSD,H1) 11:20:38 价格触发:0 MJ 0 交易 (EURUSD,H1) 11:20:38 止损:0 IR 0 交易 (EURUSD,H1) 11:20:38 获利:0 QD 0 交易 (EURUSD,H1) 11:20:38 成交量:0。1 NO 0笔交易 (EURUSD,H1) 11:20:38 NP 0笔交易 (EURUSD,H1) 11:20:38 ------------TransactionDescription LN 0笔交易 (EURUSD,H1) 11:20:38 TRADE_TRANSACTION_ORDER_DELETE DE 0笔交易 (EURUSD,H1) 11:20:38 Symbol: EURUSD PK 0笔交易 (EURUSD,H1) 11:20:38 Deal ticket: 0 PM 0笔交易(EURUSD,H1) 11:20:38 Deal type:DEAL_TYPE_BUY LG 0次交易 (EURUSD,H1) 11:20:38 Order ticket: 11670968 HR 0次交易 (EURUSD,H1) 11:20:38 Order type: ORDER_TYPE_SELL HH 0次交易 (EURUSD,H1) 11:20:38 订单状态: ORDER_STATE_FILLED FK 0个交易(EURUSD,H1) 11:20:38 订单时间类型: ORDER_TIME_GTC NQ 0个交易(EURUSD,H1) 11:20:38 订单到期时间: 1970。01.01 00:00:00 HH 0 交易 (EURUSD,H1) 11:20:38 价格: 1.2361 KL 0 transactions (EURUSD,H1) 11:20:38 Price trigger: 0 GG 0 transactions (EURUSD,H1) 11:20:38 Stop Loss: 0 GI 0 transactions (EURUSD,H1) 11:20:38 Take Profit: 0 RS 0 transactions (EURUSD,H1) 11:20:38 Volume:0 DJ 0次交易 (EURUSD,H1) 11:20:38 HO 0次交易 (EURUSD,H1) 11:20:38 ------------TransactionDescription JI 0次交易 (EURUSD,H1) 11:20:38 TRADE_TRANSACTION_HISTORY_ADD LN 0次交易 (EURUSD,H1) 11:20:38 Symbol。EURUSD HF 0 交易 (EURUSD,H1) 11:20:38 交易票据: 0 HR 0 交易 (EURUSD,H1) 11:20:38 交易类型: DEAL_TYPE_BUY DH 0 交易 (EURUSD,H1) 11:20:38 订单票据: 11670968 PM 0 交易 (EURUSD,H1) 11:20:3838 订单类型: ORDER_TYPE_SELL PF 0笔交易 (EURUSD,H1) 11:20:38 订单状态: ORDER_STATE_FILLED NQ 0笔交易 (EURUSD,H1) 11:20:38 订单时间类型: ORDER_TIME_GTC FK 0笔交易 (EURUSD,H1) 11:20:38 订单到期时间: 1970。01.01 00:00 PO 0 交易 (EURUSD,H1) 11:20:38 价格: 1.2361 CF 0 交易 (EURUSD,H1) 11:20:38 价格触发:0 OM 0 交易 (EURUSD,H1) 11:20:38 止损:0 OG 0 交易 (EURUSD,H1) 11:20:38 获利:0 JN 0 交易 (EURUSD,H1) 11:20:38 量。0 LP 0次交易 (EURUSD,H1) 11:20:38 PE 0次交易 (EURUSD,H1) 11:20:38 ------------TransactionDescription MR 0次交易 (EURUSD,H1) 11:20:38 TRADE_TRANSACTION_POSITION JH 0次交易 (EURUSD,H1) 11:20:38 Symbol。EURUSD JP 0 交易 (EURUSD,H1) 11:20:38 交易单:0 FH 0 交易 (EURUSD,H1) 11:20:38 交易类型:DEAL_TYPE_BUY HQ 0 交易 (EURUSD,H1) 11:20:38 订单单:0 DK 0 交易 (EURUSD,H1) 11:20:38 订单类型。ORDER_TYPE_BUY GQ 0笔交易 (EURUSD,H1) 11:20:38 订单状态: ORDER_STATE_STARTED RH 0笔交易 (EURUSD,H1) 11:20:38 订单时间类型: ORDER_TIME_GTC JL 0笔交易 (EURUSD,H1) 11:20:38 订单到期时间: 1970。01.01 00:00:00 HG 0 交易 (EURUSD,H1) 11:20:38 价格:1.23579 QP 0 交易 (EURUSD,H1) 11:20:38 价格触发:0 LI 0 交易 (EURUSD,H1) 11:20:38 止损:1。2354 HO 0 交易 (EURUSD,H1) 11:20:38 止盈:1.2361 QD 0 交易 (EURUSD,H1) 11:20:38 成交量:0.1 NO 0笔交易 (EURUSD,H1) 11:20:38 NP 0笔交易 (EURUSD,H1) 11:20:38 ------------TransactionDescription FO 0笔交易 (EURUSD,H1) 11:20:38 TRADE_TRANSACTION_DEAL_AD LE 0笔交易 (EURUSD,H1) 11:20:38 Symbol: EURUSD EH 0笔交易 (EURUSD,H1) 11:20:38 Deal ticket: 10809689 RQ 0篇交易 (EURUSD,H1) 11:20:38 Deal type:DEAL_TYPE_SELL DF 0 交易 (EURUSD,H1) 11:20:38 订单票据: 11670968 HN 0 交易 (EURUSD,H1) 11:20:38 订单类型: ORDER_TYPE_BUY CD 0 交易 (EURUSD,H1) 11:20:38 订单状态: ORDER_STATE_STARTED NK 0个交易(EURUSD,H1) 11:20:38 订单时间类型: ORDER_TIME_GTC FQ 0个交易(EURUSD,H1) 11:20:38 订单到期时间: 1970。01.01 00:00:00 PI 0 交易 (EURUSD,H1) 11:20:38 价格:1.2361 CL 0 交易 (EURUSD,H1) 11:20:38 价格触发:0 OG 0 交易 (EURUSD,H1) 11:20:38 止损:0 OI 0 交易 (EURUSD,H1) 11:20:38 获利:0 KQ 0 交易 (EURUSD,H1) 11:20:38 量:0.1 将这些交易联系起来的唯一东西是价格(收盘价 等于TP价)。问题--这就是确定TP事实的方法吗?我认为,不方便而且不明确(如果我没记错的话,准确的TP价格可能不会发生,TP将在最近的其他价格上关闭)。 Документация по MQL5: Стандартные константы, перечисления и структуры / Константы индикаторов / Ценовые константы www.mql5.com Стандартные константы, перечисления и структуры / Константы индикаторов / Ценовые константы - Документация по MQL5 Dimka-novitsek 2012.08.14 12:04 #8082 下午好!我提前道歉,也许我是愚钝的,或者我不明白一些明显的事情。我正在尝试使用iMA指标,试图根据我读过的例子来写。一般来说,我尝试这样做。我在顶层宣布,高于EA的所有职能。 double MA[]; // массив для индикатора iMA //---- handles for indicators int MA_handle; // указатель на индикатор iMA然后我使用一个函数,在OnTick()函数 中工作。在样本中,函数本身是在底部。事实上,现在,我将只使用数组的最后一个零值。 if (EURNZD_d1 != 0.0) countq++; EURUSD_d1 = CalculateStrengthPairsTF("EURUSD"+dop_symb, PERIOD_D1); if (EURUSD_d1 != 0.0) countq++; EURCAD_d1 = CalculateStrengthPairsTF("EURCAD"+dop_symb, PERIOD_D1); if (EURCAD_d1 != 0.0) countq++; EURGBP_d1 = CalculateStrengthPairsTF("EURGBP"+dop_symb, PERIOD_D1); if (EURGBP_d1 != 0.0) countq++; EURAUD_d1 = CalculateStrengthPairsTF("EURAUD"+dop_symb, PERIOD_D1); if (EURAUD_d1 != 0.0) countq++; EURCHF_d1 = CalculateStrengthPairsTF("EURCHF"+dop_symb, PERIOD_D1); if (EURCHF_d1 != 0.0) countq++; if (countq != 0) D1_eur = NormalizeDouble((EURJPY_d1 + EURNZD_d1 + EURUSD_d1 + EURCAD_d1 + EURGBP_d1 + EURAUD_d1 + EURCHF_d1) / countq, 0); } int l_count_4 = 0; AVG_eur = 0; if (M1_eur != 0.0) l_count_4++; if (M5_eur != 0.0) l_count_4++; if (M15_eur != 0.0) l_count_4++; if (M30_eur != 0.0) l_count_4++; if (H1_eur != 0.0) l_count_4++; if (H4_eur != 0.0) l_count_4++; if (D1_eur != 0.0) l_count_4++; if (l_count_4 != 0) AVG_eur = (M1_eur + M5_eur + M15_eur + M30_eur + H1_eur + H4_eur + D1_eur) / l_count_4; } double CalculateStrengthPairsTF(string a_symbol, int a_timeframe) { int DIGITS_ = SymbolInfoInteger(a_symbol,SYMBOL_DIGITS); //--- MqlTick last_tick; if(SymbolInfoTick(a_symbol,last_tick)); double BID_ = last_tick.bid; BID_ = NormalizeDouble( BID_, DIGITS_); MA_handle=iMA(a_symbol,a_timeframe,Period_,0,method_ma,price_applied); //--- заполнение массива MA[] текущими значениями индикатора iMA //--- в массив будет записано 100 элементов CopyBuffer(MA_handle,0,0,100,MA); //--- задаём порядок индексации массива MA[] как в MQL4 ArraySetAsSeries(MA,true); double iMA_ = NormalizeDouble(MA[0], DIGITS_);我将只使用最后的零值。错误'a_timeframe'--不能转换enum Owl.mq5 2009 28关于这个imino变量,它在字符串型指令中,你看它自己发着蓝光...... Документация по MQL5: Основы языка / Функции / Функции обработки событий www.mql5.com Основы языка / Функции / Функции обработки событий - Документация по MQL5 Rashid Umarov 2012.08.14 12:09 #8083 Dimka-novitsek:写入错误'a_timeframe'--无法转换枚举Owl.mq5 2009年28日 用ENUM_TIMEFRAMES 类型来责成它 Dimka-novitsek 2012.08.14 12:12 #8084 谢谢你!!!。它与double、string或int相同吗?我不明白,对不起,我应该把这种类型放在哪里?好的,谢谢! MQ Alexander 2012.08.14 12:24 #8085 Valmars: 这纯粹是一个测试者的错误。在TRADE_TRANSACTION_DEAL_ADD的情况下,Trans.price_tp字段可能包含0或任何垃圾。在线交易能正确输出一切。 谢谢你。固定的。下一个版本中会有一个修复。 FRX154 2012.08.15 13:32 #8086 //+------------------------------------------------------------------+//| cs2011.mq5 | |//| Copyright © 2011, Xupypr |版权所有。//+------------------------------------------------------------------+#property copyright "Copyright © 2011, Xupypr"#财产版本 "1.1"//+-----------------------------------+输入双倍的Risk=3; // 起始手数输入int TP=2200。输入int SL=0。输入int Fast=30。输入int Slow=500。输入int Sign=36。//+-----------------------------------+int Money, Deposit=5000;int MACD。//+-----------------------------------+空白的OnInit(){MACD=iMACD(NULL,0,快,慢,符号,PRICE_CLOSE)。}//+-----------------------------------+空白的OnTick(){static bool UpSignal,DnSignal;如果(TradeSignalCounter(UpSignal,DnSignal))TradePerformer(UpSignal,DnSignal)。}//+-----------------------------------+bool TradeSignalCounter(bool &UpSignal,bool &DnSignal){如果(Bars(_Symbol,0)<100)返回(false)。static int Recount;如果(IsNewBar() || Recount){双重Ind[2],Sig[3]。DnSignal=false。UpSignal=false。重新计算=false。如果(CopyBuffer(MACD,0,1,2,Ind)<0) Recount=true。如果(CopyBuffer(MACD,1,1,3,Sig)<0) Recount=true。如果(Recount==true)返回(false)。如果(Ind[0]>0 &&Ind[1]<0) DnSignal=true。如果(Ind[0]<0 &&Ind[1]>0) UpSignal=true。if(Ind[1]<0 && Sig[0]<Sig[1] && Sig[1]>Sig[2]) DnSignal=true。if(Ind[1]>0 && Sig[0]>Sig[1] && Sig[1]<Sig[2]) UpSignal=true。return(true)。}return(false)。}//+-----------------------------------+bool TradePerformer(bool &UpSignal,bool &DnSignal){如果(UpSignal){如果(PositionOpen(POSITION_TYPE_BUY))UpSignal=false。}如果(DnSignal){如果(PositionOpen(POSITION_TYPE_SELL))DnSignal=false。}return(true)。}//+-----------------------------------+Double Money_M(){HistorySelect(0,TimeCurrent())。int total=HistoryDealsTotal()。双倍利润=0。for(int i=0;i<total;i++){ulong deal_ticket=HistoryDealGetTicket(i)。如果(HistoryDealGetString(deal_ticket,DEAL_SYMBOL)!=_Symbol)继续。如果(HistoryDealGetInteger(deal_ticket,DEAL_TYPE)>1) 继续。profit+=HistoryDealGetDouble(deal_ticket,DEAL_PROFIT)。profit+=HistoryDealGetDouble(deal_ticket,DEAL_SWAP)。}钱=存款+利润。如果(PositionSelect(_Symbol)){Money+=PositionGetDouble(POSITION_PROFIT)。Money+=PositionGetDouble(POSITION_SWAP)。}double Min=SymbolInfoDouble(_Symbol,SYMBOL_VOLUME_MIN)。double Limit=SymbolInfoDouble(_Symbol,SYMBOL_VOLUME_LIMIT)。双倍手数=风险*资金/存款。Lots=MathMin(Limit,MathMax(Min,Lots))。return(Lots)。}//+-----------------------------------+bool PositionOpen(ENUM_POSITION_TYPE Type){MqlTradeRequest请求。MqlTradeResult结果。MqlTradeCheckResult 检查。double volume=Money_M();双倍takeprofit=0,stoploss=0。如果(PositionSelect(_Symbol)){double volumepos=PositionGetDouble(POSITION_VOLUME)。如果(PositionGetInteger(POSITION_TYPE)==Type) volume-=volumepos。else volume+=volumepos;}for(int i=0;i<10;i++){volume=NormalizeDouble(volume,1)。if(volume<=0) break;如果(Type==POSITION_TYPE_SELL){request.type=ORDER_TYPE_SELL。request.price=SymbolInfoDouble(_Symbol,SYMBOL_BID)。如果(TP!=0) takeprofit = request.price-TP*_Point;if(SL!=0) stoploss = request.price+SL*_Point;}如果(Type==POSITION_TYPE_BUY){request.type=ORDER_TYPE_BUY。request.price=SymbolInfoDouble(_Symbol,SYMBOL_ASK)。如果(TP!=0) takeprofit = request.price+TP*_Point;if(SL!=0) stoploss = request.price-SL*_Point;}request.action = TRADE_ACTION_DEAL;request.symbol = _Symbol;request.volume = MathMin(volume,SymbolInfoDouble(_Symbol,SYMBOL_VOLUME_MAX))。request.sl = stoploss;request.tp = takeprofit;request.deviation=SymbolInfoInteger(_Symbol,SYMBOL_SPREAD)。request.type_filling=ORDER_FILLING_AON。request.comment=DoubleToString(Money,2)+"$"。if(!OrderCheck(request,check)){if(check.margin_level<100) volume=SymbolInfoDouble(_Symbol,SYMBOL_VOLUME_STEP);Print("OrderCheck Code: ",check.retcode);继续。}if(!OrderSend(request,result)|| result.deal==0){Print("OrderSend Code: " ,result.retcode);如果(result.retcode==TRADE_RETCODE_TRADE_DISABLED) break;如果(result.retcode==TRADE_RETCODE_MARKET_CLOSED) break;如果(result.retcode==TRADE_RETCODE_NO_MONEY) break;if(result.retcode==TRADE_RETCODE_TOO_MANY_REQUESTS) Sleep(5000);如果(result.retcode==TRADE_RETCODE_FROZEN) break;if(result.retcode==TRADE_RETCODE_CONNECTION) Sleep(15000);if(result.retcode==TRADE_RETCODE_LIMIT_VOLUME) break;}否则volume-=result.volume。睡眠(1000)。}if(!PositionSelect(_Symbol)) return(false);return(true)。}//+-----------------------------------+bool IsNewBar(){static datetime Told;datetime Tnew[1];CopyTime(_Symbol,PERIOD_CURRENT,0,1,Tnew)。如果(Tnew[0]! =Told){Told=Tnew[0]。return(true)。}return(false)。}//+-----------------------------------+请告知为什么EA中的request.type_filling=ORDER_FILLING_AON;行包含错误'ORDER_FILLING_AON'-未声明的标识符 cs2011.mq5 127 28 in version 697 Документация по MQL5: Стандартные константы, перечисления и структуры / Структуры данных / Структура результатов проверки торгового запроса www.mql5.com Стандартные константы, перечисления и структуры / Структуры данных / Структура результатов проверки торгового запроса - Документация по MQL5 Errors, bugs, questions 在特定经纪商的真实账户中存在多个订单输入问题 Multiple Order Entry Problem Mykola Demko 2012.08.15 13:37 #8087 FRX154:请告知为什么EA中的request.type_filling=ORDER_FILLING_AON;行包含错误'ORDER_FILLING_AON'-未声明的标识符 cs2011.mq5 127 28 in version 697因为自EA编写 以来,语言已经改变。把request.type_filling=ORDER_FILLING_AON放在这一行中。request.type_filling=ORDER_FILLING_FOK; 祝你好运。或者你可以直接把0request.type_filling=0。也会起作用。PS或者(为了避免编辑整个EA),你可以在所有东西的最上面放一个补丁。#define ORDER_FILLING_AON ORDER_FILLING_FOK这只是为了防止ORDER_FILLING_AON被多次提及。 Stanislav Korotky 2012.08.15 14:14 #8088 出于某种原因,我看到了下面的画面:当我在终端将导航仪中的一个指标粘贴到图表上时,但图表上显示的是指标的空区域,指标本身没有显示,但如果我打开图表指数的列表,它就会出现在那里,并有 "调试 "的注释。这是什么虫子,我怎样才能对付它? Vladimir Gomonov 2012.08.15 14:23 #8089 marketeer: 出于某种原因,我看到了下面的画面:当我在终端将导航仪中的一个指标粘贴到图表上时,但图表上显示的是指标的空区域,指标本身没有显示,但如果我打开图表指数的列表,它就会出现在那里,并有 "调试 "的注释。这是什么虫子,我如何应对它? 重新编译 Fia 2012.08.16 11:43 #8090 好心人,救命啊!以最简单的代码为例。#property copyright "Copyright 2011,"#property link "http://www.mql5.com"#property version "1.00"//+------------------------------------------------------------------+//| Expert initialization function |//+------------------------------------------------------------------+ int OnInit() {//--- double Vhod; Vhod=linfunc(15);//--- return(0); }//+------------------------------------------------------------------+//| Expert deinitialization function |//+------------------------------------------------------------------+ void OnDeinit(const int reason) {//--- }//+------------------------------------------------------------------+//| Expert tick function |//+------------------------------------------------------------------+ void OnTick() {//--- }//+------------------------------------------------------------------+ double linfunc(int b) // имя функции и список параметров { double a; while((a/b)<1 && !IsStopped())//--------- { a=a+1; } double f=a+b;// составной оператор return(a+b); // возвращаемое значение }我们在687编译,在调试器中得到Vhod=0。 你如何理解它?同时,有时我得到Vhod=30。(很奇怪但却是事实)。返回返回一些胡言乱语...这些故障是什么,还是我错过了什么? Errors, bugs, questions 初学者的问题 MQL4 MT4 MetaTrader 请帮助我 [已解决] 1...802803804805806807808809810811812813814815816...3184 新评论 您错过了交易机会: 免费交易应用程序 8,000+信号可供复制 探索金融市场的经济新闻 注册 登录 拉丁字符(不带空格) 密码将被发送至该邮箱 发生错误 使用 Google 登录 您同意网站政策和使用条款 如果您没有帐号,请注册 可以使用cookies登录MQL5.com网站。 请在您的浏览器中启用必要的设置,否则您将无法登录。 忘记您的登录名/密码? 使用 Google 登录
回到在OnTradeTransaction事件中确定止损和止盈的问题。我有以下日志输出结构的所有字段(取自MetaQuotes的例子),这不再是一个测试者,而是一个在线竞争。这里我们有一个买点。
在这里,它以获利收盘。
将这些交易联系起来的唯一东西是价格(收盘价 等于TP价)。问题--这就是确定TP事实的方法吗?我认为,不方便而且不明确(如果我没记错的话,准确的TP价格可能不会发生,TP将在最近的其他价格上关闭)。
下午好!我提前道歉,也许我是愚钝的,或者我不明白一些明显的事情。我正在尝试使用iMA指标,试图根据我读过的例子来写。
一般来说,我尝试这样做。我在顶层宣布,高于EA的所有职能。
然后我使用一个函数,在OnTick()函数 中工作。在样本中,函数本身是在底部。事实上,现在,我将只使用数组的最后一个零值。
我将只使用最后的零值。
错误'a_timeframe'--不能转换enum Owl.mq5 2009 28
关于这个imino变量,它在字符串型指令中,你看它自己发着蓝光......
写入错误'a_timeframe'--无法转换枚举Owl.mq5 2009年28日
谢谢你!!!。它与double、string或int相同吗?我不明白,对不起,我应该把这种类型放在哪里?
好的,谢谢!
这纯粹是一个测试者的错误。在TRADE_TRANSACTION_DEAL_ADD的情况下,Trans.price_tp字段可能包含0或任何垃圾。在线交易能正确输出一切。
请告知为什么EA中的request.type_filling=ORDER_FILLING_AON;行包含错误'ORDER_FILLING_AON'-未声明的标识符 cs2011.mq5 127 28 in version 697
请告知为什么EA中的request.type_filling=ORDER_FILLING_AON;行包含错误'ORDER_FILLING_AON'-未声明的标识符 cs2011.mq5 127 28 in version 697
因为自EA编写 以来,语言已经改变。
把request.type_filling=ORDER_FILLING_AON放在这一行中。
request.type_filling=ORDER_FILLING_FOK; 祝你好运。
或者你可以直接把0
request.type_filling=0。
也会起作用。
PS或者(为了避免编辑整个EA),你可以在所有东西的最上面放一个补丁。
#define ORDER_FILLING_AON ORDER_FILLING_FOK
这只是为了防止ORDER_FILLING_AON被多次提及。
出于某种原因,我看到了下面的画面:当我在终端将导航仪中的一个指标粘贴到图表上时,但图表上显示的是指标的空区域,指标本身没有显示,但如果我打开图表指数的列表,它就会出现在那里,并有 "调试 "的注释。这是什么虫子,我如何应对它?
好心人,救命啊!
以最简单的代码为例。
#property copyright "Copyright 2011,"
#property link "http://www.mql5.com"
#property version "1.00"
//+------------------------------------------------------------------+
//| Expert initialization function |
//+------------------------------------------------------------------+
int OnInit()
{
//---
double Vhod;
Vhod=linfunc(15);
//---
return(0);
}
//+------------------------------------------------------------------+
//| Expert deinitialization function |
//+------------------------------------------------------------------+
void OnDeinit(const int reason)
{
//---
}
//+------------------------------------------------------------------+
//| Expert tick function |
//+------------------------------------------------------------------+
void OnTick()
{
//---
}
//+------------------------------------------------------------------+
double linfunc(int b) // имя функции и список параметров
{
double a;
while((a/b)<1 && !IsStopped())//---------
{
a=a+1;
}
double f=a+b;
// составной оператор
return(a+b); // возвращаемое значение
}
我们在687编译,在调试器中得到Vhod=0。
你如何理解它?同时,有时我得到Vhod=30。(很奇怪但却是事实)。
返回返回一些胡言乱语...
这些故障是什么,还是我错过了什么?