오류, 버그, 질문 - 페이지 133

 
Interesting :
내가 이해하는 한, 데모 또는 테스터에서와 같이 발생액이...
어때요? 재발견 또는 발생
 
Dmitriy2 :

따라서 로그에 값을 출력할 때 한 번만(처음으로) 포물선 함수, 즉 CopyBuffer는 -1이 아닌 0을 반환합니다. 오류가 발생한 경우에 발생해야 하기 때문입니다(그렇지 않아야 하지만 모든 데이터가 있고 모든 것이 업로드되고 멋진다차원 배열 이 없으며 오류가 없어야 합니다! ). 그리고 이것은 테스터에서만 한 번만 발생합니다. 그러면 모든 것이 잘 작동합니다.

메인 코드에서는 함수가 나에게 무엇을 반환하는지는 중요하지 않으며, 결국 거래 요청에 관해서는 요청에 대해 수신된 값을 범용 함수로 확인하고 만약 모든 것이 정상입니다. 요청을 보냅니다. 아니요. 정상이 될 때까지 기다립니다...

포물선 getter 함수에서 이 코드를 시도하십시오.

 double Параболик( ENUM_TIMEFRAMES период, double step, double maximum, int бар)
  {
   double ЗначениеParabolic[ 1 ];
   int Parabolic= iSAR ( Symbol (),период,step,maximum);
   int cb= CopyBuffer (Parabolic, 0 ,бар, 1 ,ЗначениеParabolic);
   if (cb!= 1 ) Print ( "BarsCalculated " , BarsCalculated (Parabolic), ", CopyBuffer " , cb, ", ArrayValue " ,ЗначениеParabolic[ 0 ]);
   return (ЗначениеParabolic[ 0 ]);
  }

로그에 이와 같은 내용이 표시됩니다.

 2010.09 . 15 14 : 53 : 53      Core 1    2010.09 . 01 00 : 00 : 07    BarsCalculated - 1 , CopyBuffer - 1 , ArrayValue 0
2010.09 . 15 14 : 53 : 53      Core 1    2010.09 . 01 00 : 00 : 07    BarsCalculated - 1 , CopyBuffer - 1 , ArrayValue 0
2010.09 . 15 14 : 53 : 53      Core 1    2010.09 . 01 00 : 00 : 07    BarsCalculated - 1 , CopyBuffer - 1 , ArrayValue 0
2010.09 . 15 14 : 53 : 53      Core 1    2010.09 . 01 00 : 00 : 07    BarsCalculated - 1 , CopyBuffer - 1 , ArrayValue 0
2010.09 . 15 14 : 53 : 53      Core 1    2010.09 . 01 00 : 00 : 07    BarsCalculated - 1 , CopyBuffer - 1 , ArrayValue 0
2010.09 . 15 14 : 53 : 53      Core 1     SLпоПервойТочкеПараболика=true

이것은 -1이 아닌 0을 얻는 이유를 설명합니다.

3번째 반복하겠습니다. 데이터를 사용할 수 있지만 지표 값은 해당 시점에서 계산되지 않을 수 있습니다(MAY). 설명서에 적혀있어요!

 
maryan.dirtyn :
어때요? 재발견 또는 발생
FC는 재개장으로 어려움을 겪고 MT는 평생 동안 누적되었습니다. 일반 요일 싱글 및 수요일 x3( 트리플 스왑 날짜 지정)...
Документация по MQL5: Стандартные константы, перечисления и структуры / Состояние окружения / Информация об инструменте
Документация по MQL5: Стандартные константы, перечисления и структуры / Состояние окружения / Информация об инструменте
  • www.mql5.com
Стандартные константы, перечисления и структуры / Состояние окружения / Информация об инструменте - Документация по MQL5
 
Interesting :
FC는 재개장으로 어려움을 겪고 있으며 MT에서는 평생 동안 발생했습니다. 일반 요일 싱글 및 수요일 x3( 트리플 스왑 날짜 지정)...
나는 FK가 무엇인지 모른다.. 나는 그것이 챔피언십에서 어떻게 될 것인지 알아야합니다.
 
alexvd :

포물선 getter 함수에서 이 코드를 시도하십시오.

로그에 이와 같은 내용이 표시됩니다.

이것은 -1이 아닌 0을 얻는 이유를 설명합니다.

3번째 반복하겠습니다. 데이터를 사용할 수 있지만 지표 값은 해당 시점에서 계산되지 않을 수 있습니다(MAY). 설명서에 적혀있어요!

정확히, 우리는 CopyBuffer의 응답이 아닌 포물선의 값을 얻습니다 ...

좋아... 포물선의 기능을 당신이 제공한 것으로 변경합시다(인화와 함께).

for 루프에 지문을 추가합니다(제로 보호 없음)

 if (НапрСигнала== ORDER_TYPE_BUY )
     {
       if (SLпоПервойТочкеПараболика==true)
         for (i= 0 ;;i=i+ 1 )
           {
             Print ( "бай, параболик до иф " ,Параболик( PERIOD_CURRENT , 0.02 , 0.2 ,i+ 1 ));
             if (iLow( PERIOD_CURRENT ,i+ 1 , 1 )<Параболик( PERIOD_CURRENT , 0.02 , 0.2 ,i+ 1 )) // || Параболик(PERIOD_CURRENT,0.02,0.2,i+1)<=0
              {
               Print ( "бай, параболик после иф " ,Параболик( PERIOD_CURRENT , 0.02 , 0.2 ,i+ 1 ));
               break ;
              }
           }
      ЗначениеSAR= NormalizeDouble (Параболик( PERIOD_CURRENT , 0.02 , 0.2 ,i)/ТИК, 0 )*ТИК;
       if (БИД>ЗначениеSAR) //bay
         slтики=( int ) NormalizeDouble ((АСК-ЗначениеSAR)/ТИК, 0 );
     }
   if (НапрСигнала== ORDER_TYPE_SELL )
     {
       if (SLпоПервойТочкеПараболика==true)
         for (i= 0 ;;i=i+ 1 )
           {
             Print ( "селл, параболик до иф " ,Параболик( PERIOD_CURRENT , 0.02 , 0.2 ,i+ 1 ));
             if (iHigh( PERIOD_CURRENT ,i+ 1 , 1 )>Параболик( PERIOD_CURRENT , 0.02 , 0.2 ,i+ 1 )) // || Параболик(PERIOD_CURRENT,0.02,0.2,i+1)<=0
              {
               Print ( "селл, параболик после иф " ,Параболик( PERIOD_CURRENT , 0.02 , 0.2 ,i+ 1 ));
               break ;
              }
           }
      ЗначениеSAR= NormalizeDouble (Параболик( PERIOD_CURRENT , 0.02 , 0.2 ,i)/ТИК, 0 )*ТИК;
       if (БИД<ЗначениеSAR) //sell
         slтики=( int ) NormalizeDouble ((ЗначениеSAR-БИД)/ТИК, 0 );
     }

테스터에서 실행

JQ       0        Core 1    15 : 16 : 37         agent process started
NJ       0        Core 1    15 : 16 : 37         connecting to 127.0 . 0.1 : 3000
NJ       0        Core 1    15 : 16 : 39         connected
GP       0        Core 1    15 : 16 : 39         authorized (agent build 328 )
LK       0        Tester   15 : 16 : 39         EURUSD,H1 (MetaQuotes-Demo): testing of Experts\Отладка.ex5 from 2010.01 . 01 00 : 00 to 2010.09 . 11 00 : 00 to be started
RH       0        Core 1    15 : 16 : 41         common synchronization completed
RS       0        Core 1    15 : 16 : 41          3124 bytes of account info loaded
RI       0        Core 1    15 : 16 : 41          3768 bytes of group info loaded
MN       0        Core 1    15 : 16 : 41          7170 bytes of tester parameters loaded
EL       0        Core 1    15 : 16 : 41          275 bytes of selected symbols loaded
IK       0        Core 1    15 : 16 : 41         expert file added: Experts\Отладка.ex5. 6597 bytes loaded
LE       0        Core 1    15 : 16 : 41         initial deposit 10000.00 USD, leverage 1 : 100
KO       0        Core 1    15 : 16 : 41         successfully initialized
RQ       0        Core 1    15 : 16 : 41          23 Kb of total initialization data received
KK       0        Core 1    15 : 16 : 41         performance: 72
HP       0        Core 1    15 : 16 : 41         EURUSD: symbol synchronized, 2904 bytes of symbol info received
RI       0        Core 1    15 : 16 : 43         EURUSD: load 27 bytes of history data to synchronize
MG       0        Core 1    15 : 16 : 43         EURUSD: history synchronized from 1993.05 . 13 to 2010.09 . 10
MP       0        Core 1    15 : 16 : 45          2010.01 . 04 00 : 00 : 02    BarsCalculated - 1 , CopyBuffer - 1 , ArrayValue 0
CD       0        Core 1    15 : 16 : 45          2010.01 . 04 00 : 00 : 02    BarsCalculated - 1 , CopyBuffer - 1 , ArrayValue 0
IK       0        Core 1    15 : 16 : 45          2010.01 . 04 00 : 00 : 02    BarsCalculated - 1 , CopyBuffer - 1 , ArrayValue 0
ON       0        Core 1    15 : 16 : 45          2010.01 . 04 00 : 00 : 02    BarsCalculated - 1 , CopyBuffer - 1 , ArrayValue 0
ER       0        Core 1    15 : 16 : 45          2010.01 . 04 00 : 00 : 02    BarsCalculated - 1 , CopyBuffer - 1 , ArrayValue 0
KI       0        Core 1    15 : 16 : 45          2010.01 . 04 00 : 00 : 02    BarsCalculated - 1 , CopyBuffer - 1 , ArrayValue 0
QL       0        Core 1    15 : 16 : 45          2010.01 . 04 00 : 00 : 02    BarsCalculated - 1 , CopyBuffer - 1 , ArrayValue 0
GP       0        Core 1    15 : 16 : 45          2010.01 . 04 00 : 00 : 02    BarsCalculated - 1 , CopyBuffer - 1 , ArrayValue 0
MG       0        Core 1    15 : 16 : 45          2010.01 . 04 00 : 00 : 02    BarsCalculated - 1 , CopyBuffer - 1 , ArrayValue 0
CK       0        Core 1    15 : 16 : 45          2010.01 . 04 00 : 00 : 02    BarsCalculated - 1 , CopyBuffer - 1 , ArrayValue 0
IN       0        Core 1    15 : 16 : 45          2010.01 . 04 00 : 00 : 02    BarsCalculated - 1 , CopyBuffer - 1 , ArrayValue 0
OE       0        Core 1    15 : 16 : 45          2010.01 . 04 00 : 00 : 02    BarsCalculated - 1 , CopyBuffer - 1 , ArrayValue 0
EI       0        Core 1    15 : 16 : 45          2010.01 . 04 00 : 00 : 02    BarsCalculated - 1 , CopyBuffer - 1 , ArrayValue 0
KL       0        Core 1    15 : 16 : 45          2010.01 . 04 00 : 00 : 02    BarsCalculated - 1 , CopyBuffer - 1 , ArrayValue 0
QS       0        Core 1    15 : 16 : 45          2010.01 . 04 00 : 00 : 02    BarsCalculated - 1 , CopyBuffer - 1 , ArrayValue 0
GG       0        Core 1    15 : 16 : 45          2010.01 . 04 00 : 00 : 02    BarsCalculated - 1 , CopyBuffer - 1 , ArrayValue 0
KJ       0        Core 1    15 : 16 : 47          2010.01 . 04 00 : 00 : 02    BarsCalculated - 1 , CopyBuffer - 1 , ArrayValue 0
EN       0        Core 1    15 : 16 : 47          2010.01 . 04 00 : 00 : 02    BarsCalculated - 1 , CopyBuffer - 1 , ArrayValue 0

취소를 누를 때까지 무한대로

전문가를 차트에 올리다

PJ      0       Experts 15:27:14        expert Отладка (EURUSD,M20) removed
MR      0       Trades  15:27:18        '677265' : instant buy 0.10 EURUSD at 1.29697
EH      0       Trades  15:27:19        '677265' : accepted instant buy 0.10 EURUSD at 1.29697
GL      0       Trades  15:27:21        '677265' : order #1350474 buy 0.10 EURUSD at 1.29697 done
LH      0       Trades  15:27:21        '677265' : deal #1426626 buy 0.10 EURUSD at 1.29697 done (based on order #1350474)
LI      0       Experts 15:27:56        expert Отладка (EURUSD,M20) loaded successfully
IR      0       Trades  15:28:07        '677265' : instant sell 0.10 EURUSD at 1.29690 sl: 1.30136 tp: 1.29502
IM      0       Trades  15:28:08        '677265' : accepted instant sell 0.10 EURUSD at 1.29690 sl: 1.30136 tp: 1.29502
RK      0       Trades  15:28:10        '677265' : order #1350477 sell 0.10 EURUSD at 1.29690 done
RO      0       Trades  15:28:10        '677265' : deal #1426629 sell 0.10 EURUSD at 1.29690 done (based on order #1350477)

로그에 오류가 없습니다

전문가 탭에서 우리는 그림을보고 오류도 없습니다.

포물선의 점을 셀 수 있습니다. 모든 것이 명확하게 일치합니다. 12 번째에 우리는주기를 종료합니다 ...

 

오래전에 MQL5에서 "그 순간" 또는 이... 데이터가 여기 저기에 계산되지 않을 수 있다는 것을 깨달았습니다... 하지만 이것은 옳지 않습니다. 수정해야 하며 코드에 목발을 쓰지 않아야 합니다.

그건 그렇고, 이것은 포물선 뿐만 아니라 다른 모든 지표의 경우입니다.

 
maryan.dirtyn :
나는 FK가 무엇인지 모른다.. 나는 그것이 챔피언십에서 어떻게 될 것인지 알아야합니다.

FC - Forex Club 및 Rumus2 터미널을 가정해 보겠습니다.

챔피언십 테스트 계정이 있나요? 그것을 시도하면 모든 것이 명확해질 것입니다 ...

 
Dmitriy2 :

오래전에 MQL5에서 "그 순간" 또는 이... 데이터가 여기 저기에 계산되지 않을 수 있다는 것을 깨달았습니다... 하지만 이것은 옳지 않습니다. 수정해야 하며 코드에 목발을 쓰지 않아야 합니다.

그건 그렇고, 이것은 포물선뿐만 아니라 다른 모든 지표의 경우입니다.

토론을 시작하지 맙시다.

이 주제는 여러 번 논의되었습니다. 얼마 전 그들은 이미 다시 돌아왔습니다( https://www.mql5.com/en/forum/1951 ).

Тестер стратегий. Помогите разобраться с ошибкой.
Тестер стратегий. Помогите разобраться с ошибкой.
  • www.mql5.com
mq5) handle индикатора объявляется как глобальная переменная, индикатор инициализируется в OnInit() и передается в функцию.
 

앉아있어..보고있어..

MQL5와 MQL4가 같은 팀에서 작성되었다는 것이 믿기지 않습니다.(((

MQ4 - 비행..

MQ5 - 베이비 토크 .. 나는 누군가를 화나게하고 싶지 않았지만 .. (((

 
alexvd :

토론을 시작하지 맙시다.

이 주제는 여러 번 논의되었습니다. 얼마 전 그들은 이미 다시 돌아왔습니다( https://www.mql5.com/en/forum/1951 ).

나는이 주제를 본 적이 없습니다 ... 예, 동일합니다 ...

사실은 모든 경우에 대해 어리석게도 모든 행에서 검사를 수행하여 코드를 혼란스럽게 하고 쌓이게 하지는 않을 것입니다. 이것이 논의되지 않으면 ... 목발이 추가되고 상당히 큰 프로젝트가 마침내 완전히 다시 완료되어 작업을 시작합니다 ...

그러나 일반적으로 나는이 접근 방식에 놀랐습니다 ... 그러한 질문이 제기 된 것은 이번이 처음이 아닙니다 (다른 사람들이 앞으로 한 번 이상 가질 것이라고 확신합니다). "처음처럼" 매번 이 버그를 해결하기 위해 수행해야 하는 작업을 설명하기 위해 자신과 다른 사람들의 작업 시간이 많이 소요됩니다.

당신이 해야 할 일은 Expert Advisor를 시작할 때 해당 브랜치에서 권장하는 이 하나를 TESTER에 추가하는 것입니다.

쉘이 글리치를 암시하고 아주 정확하게 정의된 글리치를 의미해서는 안 되며 이러한 글리치는 코드에서 우회되어야 했습니다. 또한 TERMINAL은 정확하고 올바르게 작동하며 오류가 없습니다(이 상황에서). 그러나 테스터의 작업은 터미널의 작업과 다릅니다.

ps equi 안녕하세요 :)