MQL4 및 MQL5에 대한 초보자 질문, 알고리즘 및 코드에 대한 도움말 및 토론 - 페이지 385 1...378379380381382383384385386387388389390391392...1953 새 코멘트 fxsaber 2017.11.23 07:19 #3841 Alexandr Ivanov : 글쎄, 나는 그것을 찾지 못했습니다 ... 비애. 따라서 1바에 몇 개의 틱이 나오는지 평가하고 이로부터 결론을 도출하는 것이 필요합니다. 이것이 시가인지 아니면 모두 틱 인지 여부입니다. MT4 Expert Advisor를 교차 플랫폼으로 만드십시오 - 적절한 기술로 5분(한 번!) 그런 다음 실제 또는 사용자 정의 틱에 대해 MT5에서 (여러 번) 테스트하고 MT4에서 거래합니다. Mickey Moose 2017.11.23 14:04 #3842 안녕하세요. 선택한 모든 열린 차트에서 TF를 변경하는 스크립트가 있습니다. 패턴을 바꾸는 것을 만들어야 합니다. 그러나 이를 위해 최소한 코드 측면에서 템플릿이 무엇인지 보여줍니다. msvmes 2017.11.24 16:06 #3843 안녕하세요. 준비 표시기 SMI가 있습니다. 하지만 작동하지 않습니다. 처음 시작할 때 그림을 그린 다음 새로 고침을 클릭하거나 각각의 새 막대 가 있는 다른 시간 프레임으로 전환해야 합니다. 왜요? 이 질문이 이미 여기에서 제기되었을 수 있습니다. 그러면 링크할 수 있습니다. 미리 감사드립니다. 파일: SMI.mq4 8 kb RichLux 2017.11.24 19:56 #3844 주문이 열리지 않은 이유를 설명하십시오. 다음은 잡지의 내용입니다. 2017.11.24 20:00:00.061 '5390918': 공개 판매의 경우 1.19357 / 1.19368을 다시 인용합니다. 1.19361 sl: 1.19848 tp: 1.1840에서 0.01 EURUSD 2017.11.24 19:59:59.515 '5390918': 즉석 주문 매도 0.01 EURUSD at 1.19361 sl: 1.19848 tp: 1.18402 미끄러짐은 11핍이었습니다. 27핍의 양으로 EA에서 미끄러짐이 허용됩니다. 주문 개시를 확인하는 중에 오류가 발생했습니다: 오류 138(새 가격). 주문이 열리지 않은 이유를 설명해 주세요. Any questions from newcomers 고조파 EA 및 표시기 MQL5 마법사 및 표준 Vitaly Muzichenko 2017.11.24 20:00 #3845 RichLux : 주문이 열리지 않은 이유를 설명하십시오. 다음은 잡지의 내용입니다. 2017.11.24 20:00:00.061 '5390918': 공개 판매의 경우 1.19357 / 1.19368을 다시 인용합니다. 1.19361 sl: 1.19848 tp: 1.1840에서 0.01 EURUSD 2017.11.24 19:59:59.515 '5390918': 즉석 주문 매도 0.01 EURUSD at 1.19361 sl: 1.19848 tp: 1.18402 미끄러짐은 11핍이었습니다. 27핍의 양으로 EA에서 미끄러짐이 허용됩니다. 주문 개시를 확인하는 중에 오류가 발생했습니다: 오류 138(새 가격). 주문이 열리지 않은 이유를 설명해 주세요. 이러한 문제가 발생하지 않도록 딜링 데스크 또는 계정 유형을 변경하십시오. 시장 실행을 고려하십시오. 즉시는 잊어버리십시오. gastinets 2017.11.25 11:08 #3846 표시기의 반대 신호가 아닌 이익을 취하여 거래를 마감하고 동시에 고문이 마감 직후에 열리지 않도록 코드를 작성하는 방법을 알려주십시오. 예를 들어, 다른 기간의 이동 평균 의 교차점을 입력하라는 신호는 50포인트의 이익을 얻습니다. mql5에서 가능한 경우 이익 실현에 도달하고 거래를 성사하자마자 새로운 신호/교차가 아직 없었지만 즉시 새로운 거래를 엽니다. voron_026 2017.11.27 23:24 #3847 안녕하세요. 코드를 봐주세요. 로봇은 새로운 수평선이 나타날 때 수평선을 제거하지 않습니다 //+------------------------------------------------------------------+ //| 2.0.mq4 | //| Copyright 2017,UriyGlushko | //| https://www.mql5.com | //+------------------------------------------------------------------+ #property copyright "Copyright 2017,UriyGlushko" #property link "https://www.mql5.com" #property version "1.00" #property strict extern string Rodot = "Параметры робота" ; extern double Lots = 0.1 ; extern int StopLoss = 20 ; extern int TakeProfit = 80 ; extern int Magic = 568422685 ; extern int Slippage = 3 ; // Проскальзывание extern int Shag = 40 ; // Шаг для трейлингстопа extern int Tral_dist = 40 ; // Дистанция трейлингстопа extern bool Use_traling = true ; // Использование трейлингстопа true - Включено, false - Выключено extern bool Use_shag = false ; // Использование шага. true - Включено, false - Выключено extern bool Use_bezubitok = true ; // Использование безубытка. true - Включено, false - Выключено // Параметры индикатора moving_averages extern string MA = "Параметры Скользащей средней" ; extern int MA_Period = 3 ; // Период extern int MA_Shift = 0 ; // Сдвиг extern int MA_Method = 0 ; // 0-простая, 1-экспонециальная, 2-сглаженная, 3-линейно-взвешенная // Параметры разворотных свечей extern string Comment2 = "Параметры разворотных свечей" ; extern bool _Doji = false ; extern ENUM_TIMEFRAMES TimeFrame = PERIOD_M5 ; // Период разворотной свечи extern ENUM_TIMEFRAMES LittleTimeFrame = PERIOD_M1 ; // Период точки входа extern int ATR_period = 14 ; // Период индикатора волотильности // Параметры уровней области разворота extern string Comment3 = "Параметры уровней области разворота" ; extern int UpLineSell = 4 ; // Верхняя линия ОР для продаж (пункт от High) extern int DownLineSell = 4 ; // Нижняя линия ОР для продаж (пункт от High) extern int UpLineBuy = 4 ; // Верхняя линия ОР для покупок (пункт от Low) extern int DownLineBuy = 4 ; // Нижняя линия ОР для покупок (пункт от Low) double sl, tp, dist, shag, ma1, ma2; int ticket; int DojiCandle = 0 ; //Счетчик баров "Дожи" int DojiCandleBuy = 0 ; //Счетчик входных баров на разворотном баре "Дожи" Buy int DojiCandleSell = 0 ; //Счетчик входных баров на разворотном баре "Дожи" Sell int lineDojiCandle = 0 ; //Счетчик уровней области разворота по паттерну "Дожи" // Переменные функции "Новый бар" bool New_Bar = false ; // Переменные функции паттерна "Дожи" bool BuyDoji = false ; bool SellDoji = false ; bool TradeUpDoji = false ; bool TradeDownDoji = false ; double UpLine_Doji; double DownLine_Doji; //+------------------------------------------------------------------+ //| Expert initialization function | //+------------------------------------------------------------------+ int OnInit () { if ( Digits == 3 || Digits == 5 ) { TakeProfit *= 10 ; StopLoss *= 10 ; Slippage *= 10 ; UpLineSell *= 10 ; DownLineSell *= 10 ; UpLineBuy *= 10 ; DownLineBuy *= 10 ; } return ( INIT_SUCCEEDED ); } //+------------------------------------------------------------------+ //| Expert deinitialization function | //+------------------------------------------------------------------+ void OnDeinit ( const int reason) { } //+------------------------------------------------------------------+ //| Expert tick function | //+------------------------------------------------------------------+ void OnTick () { int magic = Magic; int shag_ = Shag; double Open1 = NormalizeDouble ( iOpen ( Symbol (), TimeFrame, 1 ), Digits ); double Close1 = NormalizeDouble ( iClose ( Symbol (), TimeFrame, 1 ), Digits ); double High1 = NormalizeDouble ( iHigh ( Symbol (), TimeFrame, 1 ), Digits ); double Low1 = NormalizeDouble ( iLow ( Symbol (), TimeFrame, 1 ), Digits ); Fun_New_Bar(); Doji(); ma1 = iCustom ( NULL , 0 , "moving_averages" ,MA_Period, MA_Shift, MA_Method, 0 , 1 ); ma2 = iCustom ( NULL , 0 , "moving_averages" ,MA_Period, MA_Shift, MA_Method, 0 , 2 ); if (_Doji == true ) { if (SellDoji == true ) { if (! ObjectCreate ( ChartID (), "Arrow_Down_Doji" + IntegerToString (DojiCandle), OBJ_ARROW_DOWN , 0 , TimeCurrent (), High [ 1 ] + 70 * Point )) { Print ( "Не удалось создать метку вниз" ); } ObjectSetInteger ( ChartID (), "Arrow_Down_Doji" + IntegerToString (DojiCandle), OBJPROP_COLOR , clrChocolate ); //--- установка цвета ObjectSetInteger ( ChartID (), "Arrow_Down_Doji" + IntegerToString (DojiCandle), OBJPROP_STYLE , STYLE_SOLID ); //--- установка стиля линии ObjectSetInteger ( ChartID (), "Arrow_Down_Doji" + IntegerToString (DojiCandle), OBJPROP_WIDTH , 1 ); //--- установка толщины линии ObjectSetInteger ( ChartID (), "Arrow_Down_Doji" + IntegerToString (DojiCandle), OBJPROP_BACK , false ); //--- отображение на переднем (false) или заднем (true) плане DojiCandle ++; if (! ObjectCreate ( ChartID (), "UpLine_Doji" + IntegerToString (lineDojiCandle), OBJ_HLINE , 0 , TimeCurrent (),UpLine_Doji)) { Print ( "Не удалось создать верхнюю линию" ); } ObjectSetInteger ( ChartID (), "UpLine_Doji" + IntegerToString (lineDojiCandle), OBJPROP_COLOR , clrChocolate ); //--- установим цвет прямоугольника ObjectSetInteger ( ChartID (), "UpLine_Doji" + IntegerToString (lineDojiCandle), OBJPROP_STYLE , STYLE_SOLID ); //--- установим стиль линий прямоугольника ObjectSetInteger ( ChartID (), "UpLine_Doji" + IntegerToString (lineDojiCandle), OBJPROP_WIDTH , 1 ); //--- установим толщину линий прямоугольника ObjectSetInteger ( ChartID (), "UpLine_Doji" + IntegerToString (lineDojiCandle), OBJPROP_BACK , false ); //--- отобразим на переднем (false) или заднем (true) плане if (! ObjectCreate ( ChartID (), "DownLine_Doji" + IntegerToString (lineDojiCandle), OBJ_HLINE , 0 , TimeCurrent (),DownLine_Doji)) { Print ( "Не удалось создать нижнюю линию" ); } ObjectSetInteger ( ChartID (), "DownLine_Doji" + IntegerToString (lineDojiCandle), OBJPROP_COLOR , clrBrown ); //--- установим цвет прямоугольника ObjectSetInteger ( ChartID (), "DownLine_Doji" + IntegerToString (lineDojiCandle), OBJPROP_STYLE , STYLE_SOLID ); //--- установим стиль линий прямоугольника ObjectSetInteger ( ChartID (), "DownLine_Doji" + IntegerToString (lineDojiCandle), OBJPROP_WIDTH , 1 ); //--- установим толщину линий прямоугольника ObjectSetInteger ( ChartID (), "DownLine_Doji" + IntegerToString (lineDojiCandle), OBJPROP_BACK , false ); //--- отобразим на переднем (false) или заднем (true) плане lineDojiCandle ++; if (Open1 == Close1) { if (! ObjectCreate ( ChartID (), "Arrow_Down_Doji" + IntegerToString (DojiCandle), OBJ_ARROW_DOWN , 0 , TimeCurrent (), High [ 1 ] + 70 * Point )) { Print ( "Не удалось создать метку вниз" ); } ObjectSetInteger ( ChartID (), "Arrow_Down_Doji" + IntegerToString (DojiCandle), OBJPROP_COLOR , clrChocolate ); //--- установка цвета ObjectSetInteger ( ChartID (), "Arrow_Down_Doji" + IntegerToString (DojiCandle), OBJPROP_STYLE , STYLE_SOLID ); //--- установка стиля линии ObjectSetInteger ( ChartID (), "Arrow_Down_Doji" + IntegerToString (DojiCandle), OBJPROP_WIDTH , 1 ); //--- установка толщины линии ObjectSetInteger ( ChartID (), "Arrow_Down_Doji" + IntegerToString (DojiCandle), OBJPROP_BACK , false ); //--- отображение на переднем (false) или заднем (true) плане DojiCandle ++; Print ( "Дожи крест Down" ); if (! ObjectCreate ( ChartID (), "UpLine_Doji" + IntegerToString (lineDojiCandle), OBJ_HLINE , 0 , TimeCurrent (),UpLine_Doji)) { Print ( "Не удалось создать верхнюю линию" ); } ObjectSetInteger ( ChartID (), "UpLine_Doji" + IntegerToString (lineDojiCandle), OBJPROP_COLOR , clrOrangeRed ); //--- установим цвет прямоугольника ObjectSetInteger ( ChartID (), "UpLine_Doji" + IntegerToString (lineDojiCandle), OBJPROP_STYLE , STYLE_SOLID ); //--- установим стиль линий прямоугольника ObjectSetInteger ( ChartID (), "UpLine_Doji" + IntegerToString (lineDojiCandle), OBJPROP_WIDTH , 1 ); //--- установим толщину линий прямоугольника ObjectSetInteger ( ChartID (), "UpLine_Doji" + IntegerToString (lineDojiCandle), OBJPROP_BACK , false ); //--- отобразим на переднем (false) или заднем (true) плане if (! ObjectCreate ( ChartID (), "DownLine_Doji" + IntegerToString (lineDojiCandle), OBJ_HLINE , 0 , TimeCurrent (),DownLine_Doji)) { Print ( "Не удалось создать нижнюю линию" ); } ObjectSetInteger ( ChartID (), "DownLine_Doji" + IntegerToString (lineDojiCandle), OBJPROP_COLOR , clrBrown ); //--- установим цвет прямоугольника ObjectSetInteger ( ChartID (), "DownLine_Doji" + IntegerToString (lineDojiCandle), OBJPROP_STYLE , STYLE_SOLID ); //--- установим стиль линий прямоугольника ObjectSetInteger ( ChartID (), "DownLine_Doji" + IntegerToString (lineDojiCandle), OBJPROP_WIDTH , 1 ); //--- установим толщину линий прямоугольника ObjectSetInteger ( ChartID (), "DownLine_Doji" + IntegerToString (lineDojiCandle), OBJPROP_BACK , false ); //--- отобразим на переднем (false) или заднем (true) плане lineDojiCandle ++; } } static int switch12 = 0 ; static int switch22 = 0 ; static int switch32 = 0 ; if (ma2 > UpLine_Doji && ma2 > DownLine_Doji && ma1 > UpLine_Doji && ma1 > DownLine_Doji) { UpLine_Doji = 0 ; DownLine_Doji = 0 ; } if (ma2 > DownLine_Doji) { if (ma1 < DownLine_Doji) { switch12 = 1 ; Print ( "пересечение дожи 1" ); } } if (ma2 < DownLine_Doji) { if (ma1 > DownLine_Doji) { if (switch12 == 1 ) { switch22 = 1 ; Print ( "пересечение дожи 2" ); } } } if (ma2 > DownLine_Doji) { if ( Close [ 1 ] < DownLine_Doji) { if (switch12 == 1 ) { if (switch22 == 1 ) { switch32 = 1 ; Print ( "пересечение дожи 3" ); } } } } if (switch12 == 1 ) { if (switch22 == 1 ) { if (switch32 == 1 ) { if (! ObjectCreate ( ChartID (), "Arrow_Sell_Doji" + IntegerToString (DojiCandleSell), OBJ_ARROW_SELL , 0 , TimeCurrent (), Low [ 1 ] + 50 * Point )) { Print ( "Не удалось создать метку вниз" ); } ObjectSetInteger ( ChartID (), "Arrow_Sell_Doji" + IntegerToString (DojiCandleSell), OBJPROP_COLOR , clrChocolate ); //--- установка цвета ObjectSetInteger ( ChartID (), "Arrow_Sell_Doji" + IntegerToString (DojiCandleSell), OBJPROP_STYLE , STYLE_SOLID ); //--- установка стиля линии ObjectSetInteger ( ChartID (), "Arrow_Sell_Doji" + IntegerToString (DojiCandleSell), OBJPROP_WIDTH , 1 ); //--- установка толщины линии ObjectSetInteger ( ChartID (), "Arrow_Sell_Doji" + IntegerToString (DojiCandleSell), OBJPROP_BACK , false ); //--- отображение на переднем (false) или заднем (true) плане DojiCandleSell ++; Print ( "Точка входа SELL по разворотной свече 'Дожи'" ); UpLine_Doji = 0 ; DownLine_Doji = 0 ; if ( ObjectFind ( ChartID (), "Arrow_Sell_Doji" + IntegerToString (DojiCandleSell))) { switch12 = 0 ; switch22 = 0 ; switch32 = 0 ; } if ( ObjectFind ( ChartID (), "UpLine_Doji" + IntegerToString (lineDojiCandle)) && ObjectFind ( ChartID (), "DownLine_Doji" + IntegerToString (lineDojiCandle))) { ObjectDelete ( "UpLine_Doji" + IntegerToString (lineDojiCandle)); ObjectDelete ( "DownLine_Doji" + IntegerToString (lineDojiCandle)); Print ( "Линии удалены" ); } Print ( "Не удалось удалить верхнюю и нижнюю линии" ); } } } } } //-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------// //+------------------------------------------------------------------+ // Функция определения нового бара | //+------------------------------------------------------------------+ void Fun_New_Bar() { datetime TimeBar0 = iTime ( Symbol (),TimeFrame, 0 ); static datetime New_Time= 0 ; // Время текущего бара New_Bar= false ; // Нового бара нет if (New_Time != TimeBar0) // Сравниваем время { New_Time = TimeBar0; // Теперь время такое New_Bar = true ; // Поймался новый бар } } //+------------------------------------------------------------------+ // Функция паттерна Дожи для бычьего и медвежьего рынка | //+------------------------------------------------------------------+ void Doji() { //Параметры Дожи double Open1 = NormalizeDouble ( iOpen ( Symbol (), TimeFrame, 1 ), Digits ); double Close1 = NormalizeDouble ( iClose ( Symbol (), TimeFrame, 1 ), Digits ); double High1 = NormalizeDouble ( iHigh ( Symbol (), TimeFrame, 1 ), Digits ); double Low1 = NormalizeDouble ( iLow ( Symbol (), TimeFrame, 1 ), Digits ); double Open2 = NormalizeDouble ( iOpen ( Symbol (), TimeFrame, 2 ), Digits ); double Close2 = NormalizeDouble ( iClose ( Symbol (), TimeFrame, 2 ), Digits ); double High2 = NormalizeDouble ( iHigh ( Symbol (), TimeFrame, 2 ), Digits ); double Low2 = NormalizeDouble ( iLow ( Symbol (), TimeFrame, 2 ), Digits ); //Параметры индикатора волотильности ATR для нахожденя относительно большой свечи перед Доджи double ATR = iATR ( Symbol (),TimeFrame,ATR_period, 1 ); BuyDoji = false ; SellDoji = false ; //Математическое описание патерна Дожи if (Close1 < High1 - NormalizeDouble ( 0.3 *(High1-Low1), Digits )&& Open1 < High1 - NormalizeDouble ( 0.3 *(High1-Low1), Digits )&& Close1 > High1 - NormalizeDouble ( 0.7 *(High1-Low1), Digits )&& Open1 > High1 - NormalizeDouble ( 0.7 *(High1-Low1), Digits )&& MathAbs (Close1-Open1) <= NormalizeDouble ( 0.4 *(High1-Low1), Digits )&& MathAbs (Close2-Open2) > 0.8 *ATR && MathAbs (High1-Low1) > 0.6 *ATR) { if ((Close2 - Open2) > 0 && New_Bar) { UpLine_Doji = High1 + UpLineSell* Point (); DownLine_Doji = High1 - DownLineSell* Point (); SellDoji = true ; Print ( "Down Doji" ); // Условие разворота в медвежий тренд } if ((Close2 - Open2) < 0 ) { UpLine_Doji = High1 + UpLineBuy* Point (); DownLine_Doji = High1 - DownLineBuy* Point (); BuyDoji = true ; Print ( "Up Doji" ); // Условие разворота в бычий тренд } } } 변수 사용 static int switch12 = 0 ; static int switch22 = 0 ; static int switch32 = 0 ; 진입점 조건이 작성됩니다. Alexey Viktorov 2017.11.28 07:23 #3848 voron_026 : 안녕하세요. 코드를 살펴보십시오. 로봇은 새로운 수평선이 나타날 때 수평선을 제거하지 않습니다 변수 사용 진입점 조건이 작성됩니다. 카운터가 라인 이름에 추가되어 삭제하기 전에 값이 1 증가하기 때문입니다. voron_026 2017.11.28 07:47 #3849 나는 당신을 이해했다. 그런 다음 줄 제거를 구현하는 방법. 새 패턴이 자체 라인과 함께 나타나면 즉시 라인을 삭제해야 합니다. Alexey Viktorov 2017.11.28 07:51 #3850 voron_026 : 나는 당신을 이해했다. 그런 다음 줄 제거를 구현하는 방법. 새 패턴이 자체 라인과 함께 나타나면 즉시 라인을 삭제해야 합니다. 어떤 가정이 있습니까? 먼저 삭제한 다음 생성하시겠습니까? 아니면 삭제하지 않고 좌표만 변경하시겠습니까? 삭제하고 새로 만드는 것이 무슨 의미가 있습니까? 1...378379380381382383384385386387388389390391392...1953 새 코멘트 트레이딩 기회를 놓치고 있어요: 무료 트레이딩 앱 복사용 8,000 이상의 시그널 금융 시장 개척을 위한 경제 뉴스 등록 로그인 공백없는 라틴 문자 비밀번호가 이 이메일로 전송될 것입니다 오류 발생됨 Google으로 로그인 웹사이트 정책 및 이용약관에 동의합니다. 계정이 없으시면, 가입하십시오 MQL5.com 웹사이트에 로그인을 하기 위해 쿠키를 허용하십시오. 브라우저에서 필요한 설정을 활성화하시지 않으면, 로그인할 수 없습니다. 사용자명/비밀번호를 잊으셨습니까? Google으로 로그인
글쎄, 나는 그것을 찾지 못했습니다 ...
비애. 따라서 1바에 몇 개의 틱이 나오는지 평가하고 이로부터 결론을 도출하는 것이 필요합니다. 이것이 시가인지 아니면 모두 틱 인지 여부입니다.
MT4 Expert Advisor를 교차 플랫폼으로 만드십시오 - 적절한 기술로 5분(한 번!) 그런 다음 실제 또는 사용자 정의 틱에 대해 MT5에서 (여러 번) 테스트하고 MT4에서 거래합니다.
안녕하세요. 선택한 모든 열린 차트에서 TF를 변경하는 스크립트가 있습니다.
패턴을 바꾸는 것을 만들어야 합니다.
그러나 이를 위해 최소한 코드 측면에서 템플릿이 무엇인지 보여줍니다.
안녕하세요. 준비 표시기 SMI가 있습니다. 하지만 작동하지 않습니다. 처음 시작할 때 그림을 그린 다음 새로 고침을 클릭하거나 각각의 새 막대 가 있는 다른 시간 프레임으로 전환해야 합니다. 왜요? 이 질문이 이미 여기에서 제기되었을 수 있습니다. 그러면 링크할 수 있습니다. 미리 감사드립니다.
주문이 열리지 않은 이유를 설명하십시오.
다음은 잡지의 내용입니다.
2017.11.24 20:00:00.061 '5390918': 공개 판매의 경우 1.19357 / 1.19368을 다시 인용합니다. 1.19361 sl: 1.19848 tp: 1.1840에서 0.01 EURUSD
2017.11.24 19:59:59.515 '5390918': 즉석 주문 매도 0.01 EURUSD at 1.19361 sl: 1.19848 tp: 1.18402
미끄러짐은 11핍이었습니다. 27핍의 양으로 EA에서 미끄러짐이 허용됩니다. 주문 개시를 확인하는 중에 오류가 발생했습니다: 오류 138(새 가격).
주문이 열리지 않은 이유를 설명해 주세요.
주문이 열리지 않은 이유를 설명하십시오.
다음은 잡지의 내용입니다.
2017.11.24 20:00:00.061 '5390918': 공개 판매의 경우 1.19357 / 1.19368을 다시 인용합니다. 1.19361 sl: 1.19848 tp: 1.1840에서 0.01 EURUSD
2017.11.24 19:59:59.515 '5390918': 즉석 주문 매도 0.01 EURUSD at 1.19361 sl: 1.19848 tp: 1.18402
미끄러짐은 11핍이었습니다. 27핍의 양으로 EA에서 미끄러짐이 허용됩니다. 주문 개시를 확인하는 중에 오류가 발생했습니다: 오류 138(새 가격).
주문이 열리지 않은 이유를 설명해 주세요.
이러한 문제가 발생하지 않도록 딜링 데스크 또는 계정 유형을 변경하십시오. 시장 실행을 고려하십시오. 즉시는 잊어버리십시오.
표시기의 반대 신호가 아닌 이익을 취하여 거래를 마감하고 동시에 고문이 마감 직후에 열리지 않도록 코드를 작성하는 방법을 알려주십시오.
예를 들어, 다른 기간의 이동 평균 의 교차점을 입력하라는 신호는 50포인트의 이익을 얻습니다. mql5에서 가능한 경우
이익 실현에 도달하고 거래를 성사하자마자 새로운 신호/교차가 아직 없었지만 즉시 새로운 거래를 엽니다.
변수 사용
진입점 조건이 작성됩니다.
안녕하세요. 코드를 살펴보십시오. 로봇은 새로운 수평선이 나타날 때 수평선을 제거하지 않습니다
변수 사용
진입점 조건이 작성됩니다.
카운터가 라인 이름에 추가되어 삭제하기 전에 값이 1 증가하기 때문입니다.
나는 당신을 이해했다. 그런 다음 줄 제거를 구현하는 방법. 새 패턴이 자체 라인과 함께 나타나면 즉시 라인을 삭제해야 합니다.
어떤 가정이 있습니까?
먼저 삭제한 다음 생성하시겠습니까? 아니면 삭제하지 않고 좌표만 변경하시겠습니까? 삭제하고 새로 만드는 것이 무슨 의미가 있습니까?