[ARCHIVE] 포럼을 어지럽히 지 않도록 초보자 질문. 프로, 놓치지 마세요. 너 없이는 아무데도 - 5. - 페이지 428

 

iCustom()을 통해 호출되는 표시기가 dll로 완전히 전송되면 Expert Advisor의 성능을 높일 수 있습니까? 그런 게임이 촛불 가치가 있습니까? dll은 항상 표시기보다 빠릅니까? 그리고 dll에서 Close[] 시계열 배열로 작업하는 기능은 무엇입니까?


예, 또한 질문을 추가하겠습니다. dll에서 IndicatorCounted() 함수의 형식을 지정하는 방법입니다.

 
gyfto :

1. iCustom()을 통해 호출되는 표시기가 dll로 완전히 옮겨지면 Expert Advisor의 성능을 높일 수 있습니까? 그런 게임이 촛불 가치가 있습니까? dll은 항상 표시기보다 빠릅니까? 그리고 dll에서 Close[] 시계열 배열로 작업하는 기능은 무엇입니까?


2. 예, dll에서 IndicatorCounted() 함수의 형식을 지정하는 방법에 대한 질문도 추가하겠습니다.

흥미로운 주제. 하지만...

1. 몰라요, 안써봤지만 아직도 많이 의심스럽습니다. 아마 약간 늘어날겁니다. 내가 본 바로는 dll로 단순히 전송된 지표는 그다지 빠르게 작동하지 않았지만 지표 자체 의 코드를 최적화 하면 mql에서 매우 좋은 결과를 얻을 수 있습니다.

2. 여기에서는 속일 수 없습니다. dll의 모든 막대를 다시 계산할지 아니면 하나만 다시 계산할지 결정하기 위해 IndicatorCounted(), Bars의 값을 전달해야 합니다. IndicatorCounted() 및 Bars 대신 이미 계산된 Limit를 전달할 수 있습니다.

확실히, 표시기가 매우 느려서 Expert Advisors에서 사용하기에 비현실적이면(테스트할 수 없음) dll로 전송해도 도움이 되지 않습니다.

 
gyfto :

1. iCustom()을 통해 호출된 인디케이터가 dll로 완전히 옮겨지면 Expert Advisor의 성능을 높일 수 있습니까? 그런 게임이 촛불 가치가 있습니까? dll은 항상 표시기보다 빠릅니까? 그리고 dll에서 Close[] 시계열 배열로 작업하는 기능은 무엇입니까?
2. 예, dll에서 IndicatorCounted() 함수의 형식을 지정하는 방법에 대한 질문도 추가하겠습니다.

1. 물론 할 수 있고 해야 합니다. 20배 빠른 계산. 편리한 디버깅과 C++ 및 기타 일반 언어 의 무한한 가능성에 대해 말하는 것이 아닙니다.

2. 그녀는 거기에 필요하지 않습니다.

 
왜 줄이 끊어지나요? EMPTY 세그먼트가 필요합니다. H1에 대한 오류 코드(직접 볼 수 있음), 그러나 EMPTY를 수정하는 방법???
SetIndexStyle( 0 ,EMPTY);
 
왜 줄이 끊어지나요? EMPTY 세그먼트가 필요합니다. 코드(페이지 427)에 H1에 대한 오류가 있지만(직접 보고 있음) EMPTY를 수정하는 방법???
SetIndexStyle( 0 ,EMPTY);
 
kopeyka :
왜 줄이 끊어지나요? EMPTY 세그먼트가 필요합니다. H1에 대한 오류 코드(직접 볼 수 있음), 그러나 EMPTY를 수정하는 방법???

초기화에서 SetIndexEmptyValue(), 옵션: 0, EMPTY_VALUE 설정 시도

 
Integer :

초기화에서 SetIndexEmptyValue(), 옵션: 0, EMPTY_VALUE 설정 시도


감사합니다 ... 시도해 보겠습니다)):
 
Integer :

...

1. 몰라, 안써봤어...

시험을 마친. mql 및 dll의 EMA.

01:46:19 1 EURUSD,M15: 경고: dll: 109
01:46:19 1 EURUSD,M15: 경보: 1
01:46:19 1 EURUSD,M15: 경보: mql: 109
01:46:19 1 EURUSD,M15: 경고: dll: 0
01:46:19 1 EURUSD,M15: 경보: 2
01:46:19 1 EURUSD,M15: 경고: mql: 156
01:46:20 1 EURUSD,M15: 경고: dll: 202
01:46:20 1 EURUSD,M15: 경보: 3
01:46:20 1 EURUSD,M15: 경고: mql: 172
01:46:20 1 EURUSD,M15: 경고: dll: 0
01:46:20 1 EURUSD,M15: 경보: 4
01:46:20 1 EURUSD,M15: 경고: mql: 172
01:46:20 1 EURUSD,M15: 경고: dll: 171
01:46:20 1 EURUSD,M15: 경보: 5
01:46:20 1 EURUSD,M15: 경고: mql: 78
01:46:20 1 EURUSD,M15: 경고: dll: 78
01:46:20 1 EURUSD,M15: 경보: 6
01:46:21 1 EURUSD,M15: 경보: mql: 202
01:46:21 1 EURUSD,M15: 경고: dll: 94
01:46:21 1 EURUSD,M15: 경보: 7
01:46:21 1 EURUSD,M15: 경보: mql: 172
01:46:21 1 EURUSD,M15: 경고: dll: 94
01:46:21 1 EURUSD,M15: 경보: 8
01:46:21 1 EURUSD,M15: 경보: mql: 234
01:46:21 1 EURUSD,M15: 경고: dll: 15
01:46:21 1 EURUSD,M15: 경보: 9
01:46:21 1 EURUSD,M15: 경고: mql: 78
01:46:22 1 EURUSD,M15: 경고: dll: 94
01:46:22 1 EURUSD,M15: 경보: 10
01:46:22 1 EURUSD,M15: 경보: mql: 172
01:46:22 1 EURUSD,M15: 경고: dll: 93
01:46:22 1 EURUSD,M15: 경보: 11
01:46:22 1 EURUSD,M15: 경고: mql: 93
01:46:22 1 EURUSD,M15: 경고: dll: 78
01:46:22 1 EURUSD,M15: 경보: 12
01:46:22 1 EURUSD,M15: 경고: mql: 78
01:46:22 1 EURUSD,M15: 경고: dll: 78
01:46:22 1 EURUSD,M15: 경보: 13
01:46:23 1 EURUSD,M15: 경고: mql: 250
01:46:23 1 EURUSD,M15: 경고: dll: 156
01:46:23 1 EURUSD,M15: 경보: 14
01:46:23 1 EURUSD,M15: 경고: mql: 187
01:46:23 1 EURUSD,M15: 경고: dll: 0
01:46:23 1 EURUSD,M15: 경보: 15
01:46:23 1 EURUSD,M15: 경고: mql: 78
01:46:23 1 EURUSD,M15: 경고: dll: 171
01:46:23 1 EURUSD,M15: 경보: 16
01:46:24 1 EURUSD,M15: 경고: mql: 266
01:46:24 1 EURUSD,M15: 경고: dll: 0
01:46:24 1 EURUSD,M15: 경보: 17
01:46:24 1 EURUSD,M15: 경고: mql: 93
01:46:24 1 EURUSD,M15: 경고: dll: 78
01:46:24 1 EURUSD,M15: 경보: 18
01:46:24 1 EURUSD,M15: 경고: mql: 94
01:46:24 1 EURUSD,M15: 경고: dll: 15
01:46:24 1 EURUSD,M15: 경보: 19
01:46:24 1 EURUSD,M15: 경고: mql: 94
01:46:24 1 EURUSD,M15: 경고: dll: 78
01:46:24 1 EURUSD,M15: 경보: 20
01:46:25 1 EURUSD,M15: 경고: mql: 234
01:46:25 1 EURUSD,M15: 경고: dll: 78
01:46:25 1 EURUSD,M15: 경보: 21
01:46:25 1 EURUSD,M15: 경보: mql: 156
01:46:25 1 EURUSD,M15: 경고: dll: 94
01:46:25 1 EURUSD,M15: 경보: 22
01:46:25 1 EURUSD,M15: 경고: mql: 94
01:46:25 1 EURUSD,M15: 경고: dll: 16
01:46:25 1 EURUSD,M15: 경보: 23
01:46:26 1 EURUSD,M15: 경고: mql: 93
01:46:26 1 EURUSD,M15: 경고: dll: 171
01:46:26 1 EURUSD,M15: 경보: 24
01:46:26 1 EURUSD,M15: 경보: mql: 171
01:46:26 1 EURUSD,M15: 경고: dll: 187
01:46:26 1 EURUSD,M15: 경보: 25
01:46:26 1 EURUSD,M15: 경고: mql: 156
01:46:26 1 EURUSD,M15: 경고: dll: 78
01:46:26 1 EURUSD,M15: 경보: 26
01:46:27 1 EURUSD,M15: 경고: mql: 62
01:46:27 1 EURUSD,M15: 경고: dll: 187
01:46:27 1 EURUSD,M15: 경보: 27
01:46:27 1 EURUSD,M15: 경고: mql: 78
01:46:27 1 EURUSD,M15: 경고: dll: 171
01:46:27 1 EURUSD,M15: 경보: 28
01:46:27 1 EURUSD,M15: 경고: mql: 93
01:46:27 1 EURUSD,M15: 경고: dll: 78
01:46:27 1 EURUSD,M15: 경보: 29
01:46:27 1 EURUSD,M15: 경고: mql: 172
01:46:28 1 EURUSD,M15: 경고: dll: 94
01:46:28 1 EURUSD,M15: 경보: 평균. mql: 140 DLL: 91

여러 테스트:

평균. mql:126 dll:116
평균. mql:122 dll:86
평균. mql: 167 DLL: 91
평균. mql:149 dll:82
평균. mql: 140 DLL: 91

꽤 눈에.니다. 계산이 더 복잡하면 더 눈에 띌 것입니다.

 
주문 티켓 이 브로커의 서버에 저장되어 있다면 마법과 주문 댓글은 어디에 저장되나요?
 

안녕하세요!!! 배열이나 뭔가를 잘못 이해 한 것 같습니다. 함수는 배열에 이익을 추가하지 않습니다!! 그는 어떤 상황에서도 제로입니다. 제로와 모든 것!

기능.

/))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))


void Orderasthitaem()
{
int BUY= 0 ,SELL= 0 ,BUYLIMIT= 0 ,BUYSTOP= 0 ,SELLLIMIT= 0 ,SELLSTOP= 0 ;
double BUY_Profit= 0 ,SELL_Profit= 0 ;
       for ( int i= 0 ;i< OrdersTotal ();i++){
         OrderSelect (i, SELECT_BY_POS  ) ;  
         if (OrderSymbol()== Symbol () && OrderMagicNumber()==Magicnumber){            
         int type = OrderType();
         if (type == 0 ) {BUY++;BUY_Profit=BUY_Profit+OrderProfit();}
         if (type == 1 ) {SELL ++;SELL_Profit=SELL_Profit+OrderProfit();}
         if (type == 2 ) {BUYLIMIT++;}
         if (type == 3 ) {SELLLIMIT++;}
         if (type == 4 ) {BUYSTOP++;}
         if (type == 5 ) {SELLSTOP++;}}}
       
        Orderasthitaem[ 0 , 1 ]=BUY;Orderasthitaem[ 0 , 2 ]=BUY_Profit;
        Orderasthitaem[ 1 , 1 ]=SELL;Orderasthitaem[ 1 , 2 ]=SELL_Profit;
        Orderasthitaem[ 2 , 1 ]=BUYLIMIT;
        Orderasthitaem[ 3 , 1 ]=SELLLIMIT;
        Orderasthitaem[ 4 , 1 ]=BUYSTOP;
        Orderasthitaem[ 5 , 1 ]=SELLSTOP;
         
         
}        
    

//$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$

모든 함수 외부의 선언

 double Orderasthitaem[ 6 , 2 ]; ArrayInitialize (Orderasthitaem, 0.0 );