MQL4 및 MQL5에 대한 초보자 질문, 알고리즘 및 코드에 대한 도움말 및 토론 - 페이지 1223

 
Yurij Kozhevnikov :

입력 매개변수, 차트 주기 등을 변경할 때 정적 변수 는 다시 초기화되지 않습니다.

강제로 다시 초기화하는 귀에 트릭이 있습니까? 더 긴 경로를 대략적으로 상상할 수 있습니다. 간단하고 짧은 경로가 있습니까?

oninit에서 초기화하고 정적으로 만들지 마십시오. 갑자기

 
고맙습니다. 미소는 항상 부정적인 것보다 낫습니다.
 
여기요! AMP Global의 MT5에 있는 서버가 충돌했습니다. 네트워크를 다시 검색해도 도움이 되지 않습니다. 재부팅해도 소용이 없습니다.
파일:
 

불꽃!

"잘못된 ex4 파일(7)" 및 "전역 초기화 실패" 오류는 무엇을 의미합니까?

 
Yurij Kozhevnikov :
고맙습니다. 미소는 항상 부정적인 것보다 낫습니다.
뭔가 관련이 없는 부정적인 말을 표현한 기억이 나질 않는데 뭐...

MQL은 C 플러스 플러스가 아닙니다. 함수에는 정적 클래스 멤버 나 변수가 없어야 합니다. 그들은 많은 문제를 일으키고 이러한 문제는 현지화하기 어렵습니다.

고심 끝에 특정 Expert Advisor에서 가장 높은 수준에서만.
 

안녕하세요!!!

  1. 값 배열이 있습니다 - 500   MA   각 바에 대해

결과 번들은 어떻게 계산할 수 있습니까? :

- 방향을 바꿀 때?

그들은 나에게 코호넨 지도에 뛰어들라고 조언했지만 나는 그것을 알아낼 수 없었습니다!

 
Top2n :

안녕하세요!!!

  1. 값 배열이 있습니다 - 500   MA   각 바에 대해

결과 번들은 어떻게 계산할 수 있습니까? :

- 방향을 바꿀 때?

그들은 나에게 코호넨 지도에 뛰어들라고 조언했지만 나는 그것을 알아낼 수 없었습니다!

어떤 MA가 있습니까?

SMA라면 학교 산술로 해결할 수 있습니다. 공식만 기억하세요 :-)

 

불꽃!
스톱을 손익분기점으로 이동하는 코드가 있습니다(예: 판매의 경우).

 if ( PositionGetDouble ( POSITION_SL )> PositionGetDouble ( POSITION_PRICE_OPEN ) && ask()< PositionGetDouble ( POSITION_PRICE_OPEN )-BreakEven) {
                     //Comment("Modify sell");
                     MqlTradeRequest request;
                     MqlTradeResult   result;
                     ulong   position_ticket  = PositionGetTicket (i); // тикет позиции
                     string position_symbol  = PositionGetString ( POSITION_SYMBOL ); // символ
                     int     digits           = ( int ) SymbolInfoInteger (position_symbol, SYMBOL_DIGITS ); // количество знаков после запятой

                     double sl               = PositionGetDouble ( POSITION_PRICE_OPEN );   // Stop Loss позиции

                     double tp               = PositionGetDouble ( POSITION_TP );   // Take Profit позиции
                     ENUM_POSITION_TYPE type = ( ENUM_POSITION_TYPE ) PositionGetInteger ( POSITION_TYPE );   // тип позиции
                     ZeroMemory (request);
                     ZeroMemory (result);
                     request.action          = TRADE_ACTION_SLTP ; // тип торговой операции
                     request.position        = position_ticket;   // тикет позиции
                     request.symbol          = position_symbol;     // символ
                     request.sl              = NormalizeDouble (sl,digits);                 // Stop Loss позиции
                     request.tp              = tp;                 // Take Profit позиции
                     request.magic = Magic;

                     //--- вывод информации о модификации
                     PrintFormat ( "BreakEven POSITION_TYPE_SELL Modify #%I64d %s %s" ,position_ticket,position_symbol, EnumToString (type));
                     //--- отправка запроса
                     if (! OrderSend (request,result))
                         PrintFormat ( "BreakEven POSITION_TYPE_SELL OrderSend error %d" , GetLastError ());   // если отправить запрос не удалось, вывести код ошибки
                     //--- информация об операции
                     PrintFormat ( "BreakEven POSITION_TYPE_SELL retcode=%u  deal=%I64u  order=%I64u" ,result.retcode,result.deal,result.order);
                  }

개설 가격 수준에서 중지 정의 라인이 다음과 같은 경우:

 double sl               = PositionGetDouble ( POSITION_PRICE_OPEN );   // Stop Loss позиции

그런 다음 규범은 문제없이 중지를 번역합니다.

그러나 여기에 추가하자마자 시작 가격이 아니라 더 낮아집니다.

 double sl               = PositionGetDouble ( POSITION_PRICE_OPEN )- SymbolInfoDouble ( _Symbol , SYMBOL_POINT );   // Stop Loss позиции

또는:

 double sl               = PositionGetDouble ( POSITION_PRICE_OPEN )-1.0;   // Stop Loss позиции (для РТС например и других фондовых штуковин)

그러면 즉시 문제가 해결됩니다. 그는 잘못된 발에 대해 다음과 같이 씁니다.

2020.07.29 13:06:24.127 Trades  '723763': failed modify #16003799 sell 1 RTS-9.20 sl: 126900, tp: 124470 -> sl: 126379, tp: 124470 [Invalid stops]

발 아래에서 손을 움직일 수 있지만. 이 문제를 해결하는 방법을 알려주시겠습니까?

 

좋은 하루!


저는 초보자입니다. 방금 "개설" 브로커에 연결했습니다. iPhone에 MT5를 설치했는데 거래 계정에 연결할 수 없습니다. iPhone에는 인증서가 필요합니다. 브로커도 나에게 인증서를 보냈다. 아이폰에 설치하는 방법을 모르겠습니다. 친구, 설치 방법을 알려주세요? 미리 감사합니다!

 
좋은 오후입니다. 하지만 OnTimer에서 어떻게 조건을 설정할 수 있습니까? Time[0] TimeCorrect를 비교할 수 있습니까?