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

 
Dennis Kirichenko :

PrintFormat() 함수를 살펴보십시오. 귀하의 경우 그것을 사용하는 것이 좋습니다.

그런 다음 다음과 같습니다.

파시모니 락 :-)

코드를 시도했지만 0을 얻었습니다.

2016.05.12 00:41:43.336 Info_SymbolList AUDJPY,M15: symbolName=AUDJPY, ATR_D_1001=0.0000

 
Dennis Kirichenko :

파일에 문자열 변수만 써 보십시오.

그런 것:

ATR_D_1000 을 제외하고 모든 변수가 정상적으로 작성되었는지 명확하지 않습니다 ...
 
-Aleks- :
ATR_D_1000 을 제외하고 모든 변수가 정상적으로 작성되었는지 명확하지 않습니다 ...

G 이렇게 시도

 FileWrite (handle,symbolName);
FileWrite (handle, MarketInfo (symbolName, MODE_SPREAD ));
FileWrite (handle, MarketInfo (symbolName, MODE_MINLOT ));
FileWrite (handle, MarketInfo (symbolName, MODE_MARGINREQUIRED )* MarketInfo (symbolName, MODE_MINLOT ));
FileWrite (handle, MarketInfo (symbolName, MODE_TICKVALUE )* MarketInfo (symbolName, MODE_MINLOT )* 100 );
FileWrite (handle, MarketInfo (symbolName, MODE_STOPLEVEL ));
FileWrite (handle,str2);
FileWrite (handle,ATR_D_1000);
FileWrite (handle,ATR_M15_9600)
FileWrite (handle, iBars (symbolName, 1440 ));
FileWrite (handle, iBars (symbolName, 15 ));
 
Sergey Gritsay :

G 이렇게 시도

감사합니다. 그러나 ATR_D_1000 변수가 출력되지 않는다면 어떻게 쓰여질 것이라고 기대할 수 있겠는가?
 
-Aleks- :
감사합니다. 그러나 ATR_D_1000 변수가 출력되지 않는다면 어떻게 쓰여질 것이라고 기대할 수 있겠는가?
D 모든 것이 인쇄됩니다. 대부분의 경우 문제는 스와핑 기록에 있습니다. 1000개의 일일 막대가 상당히 커서 표시기가 처음 시작할 때 계산하는 데 오랜 시간이 걸리고 모든 것이 정상입니다.
 0        18 : 17 : 32.387     Script test_1 USDCHF,H1: loaded successfully
0        18 : 17 : 35.135     test_1 USDCHF,H1 inputs: Start= 1463014800 ; End= 1463025600 ; 
0        18 : 17 : 40.219     test_1 USDCHF,H1: initialized
0        18 : 17 : 55.643     test_1 USDCHF,H1: ATR_D_1000= 0.0
0        18 : 17 : 55.643     test_1 USDCHF,H1:  symbolName=USDCHF ATR_D_1001= 0.0
0        18 : 17 : 55.643     test_1 USDCHF,H1: uninit reason 0
0        18 : 17 : 55.644     Script test_1 USDCHF,H1: removed
0        18 : 20 : 26.749     Script test_1 USDCHF,H1: loaded successfully
0        18 : 20 : 33.592     test_1 USDCHF,H1: initialized
0        18 : 20 : 33.593     test_1 USDCHF,H1: ATR_D_1000= 0.008878300000000023
0        18 : 20 : 33.593     test_1 USDCHF,H1:  symbolName=USDCHF ATR_D_1001= 0.008878300000000023
0        18 : 20 : 33.593     test_1 USDCHF,H1: uninit reason 0
0        18 : 20 : 33.594     Script test_1 USDCHF,H1: removed
0        18 : 21 : 48.047     Script test_1 USDCHF,Daily: loaded successfully
0        18 : 21 : 53.155     test_1 USDCHF,Daily: initialized
0        18 : 21 : 53.155     test_1 USDCHF,Daily: ATR_D_1000= 0.008468200000000019
0        18 : 21 : 53.155     test_1 USDCHF,Daily:  symbolName=USDCHF ATR_D_1001= 0.008468200000000019
0        18 : 21 : 53.156     test_1 USDCHF,Daily: uninit reason 0
0        18 : 21 : 53.157     Script test_1 USDCHF,Daily: removed
0        18 : 22 : 13.167     Script test_1 USDCHF,H4: loaded successfully
0        18 : 22 : 19.313     test_1 USDCHF,H4: initialized
0        18 : 22 : 19.313     test_1 USDCHF,H4: ATR_D_1000= 0.008468200000000019
0        18 : 22 : 19.313     test_1 USDCHF,H4:  symbolName=USDCHF ATR_D_1001= 0.008468200000000019
0        18 : 22 : 19.313     test_1 USDCHF,H4: uninit reason 0
0        18 : 22 : 19.314     Script test_1 USDCHF,H4: removed
0        18 : 22 : 26.488     Script test_1 USDCHF,H1: loaded successfully
0        18 : 22 : 32.343     test_1 USDCHF,H1: initialized
0        18 : 22 : 32.344     test_1 USDCHF,H1: ATR_D_1000= 0.008468200000000019
0        18 : 22 : 32.344     test_1 USDCHF,H1:  symbolName=USDCHF ATR_D_1001= 0.008468200000000019
0        18 : 22 : 32.344     test_1 USDCHF,H1: uninit reason 0
0        18 : 22 : 32.345     Script test_1 USDCHF,H1: removed
 
Sergey Gritsay :
D 모든 것이 인쇄됩니다. 대부분의 경우 문제는 스와핑 기록에 있습니다. 1000개의 일일 막대가 상당히 커서 표시기가 처음 시작할 때 계산하는 데 오랜 시간이 걸리고 모든 것이 정상입니다.
코드가 무엇입니까? 스크립트를 첨부할 수 있습니까? 그러면 움직일 수 없습니다. 감사합니다.
 
-Aleks- :
코드가 무엇입니까? 스크립트를 첨부할 수 있습니까? 그러면 움직일 수 없습니다. 감사합니다.
당신과 같은
 //+------------------------------------------------------------------+
//|                                                       test_1.mq4 |
//|                        Copyright 2016, MetaQuotes Software Corp. |
//|                                             https://www.mql5.com |
//+------------------------------------------------------------------+
#property copyright "Copyright 2016, MetaQuotes Software Corp."
#property link        "https://www.mql5.com"
#property version    "1.00"
#property strict
//+------------------------------------------------------------------+
//| Script program start function                                    |
//+------------------------------------------------------------------+
void OnStart ()
  {

   double ATR_D_1000= 0 ;

   string symbolName= _Symbol ;

   ATR_D_1000= iATR (symbolName, 1440 , 1000 , 1 );

   Print ( "ATR_D_1000=" ,ATR_D_1000);

   Print ( " symbolName=" ,symbolName, " ATR_D_1001=" , iATR (symbolName, 1440 , 1000 , 1 ));
  }
//+------------------------------------------------------------------+
 

EX5 로딩 실패(실행 중)

 typedef void (*fn)();
fn GP( fn f ) { return f; }
void OnStart2() { Print ( __FUNCSIG__ ); }
void OnStart ()
{
         Print ( GP( OnStart2 ));
}

괜찮아

 void OnStart ()
{
         Print ( GP( OnStart ));
}
 
주문 티켓 함수가 int 유형의 값을 반환하면 도달 범위 내에 있는 한도에 도달하면 어떻게 될까요? 예를 들어 9자리 티켓 번호가 있고 한도는 10자입니다. 또는 브로커가 주문 카운터를 재설정합니까?
 
Sergey Gritsay :
당신과 같은
감사합니다 - 코드에서 버그를 찾았습니다.