조언자 쓰는 법 배우기... - 페이지 3

 
여전히 1개의 오류 OrderSend 오류 130이 있습니다.. 무엇에 의존합니까?
 
paukas >> :

미닛 캔들(예: Alpari에서)을 다운로드하고 몇 분 동안 테스트를 수행합니다.

H4용 MTS가 있는 경우 몇 분 안에 테스트를 수행할 수 있습니까?..

5개 지점에서 4시간 정차하는 테스트는 불가능합니다.

왜 안 돼?
 

기사 Automated Trading Championship 2007: 전문가 고문의 일반적인 실수
OrderSend 오류 130(ERR_INVALID_STOPS) 오류가 잘못되었거나 중지 간격이 너무 좁다는 것을 읽었습니다.

나는 DC에 전화를 걸어 정지를 설정할 수 있는 최소 거리를 물었습니다. 그들은 그러한 제한이 없다고 대답했습니다. .. 이상합니다!

그리고 아직도 한 가지 이해가 되지 않습니다. 수동으로 주문을 열면 실제로 중지 및 이익을 설정하는 것이 불가능합니다 ... 그러면 OrderSend() 함수는 어떻게 이것을합니까?

수동으로 주문한 다음 중지하는 것을 확인했습니다. 현재 가격...

이제 우리는 OrderModify()로 변태해야 합니다. 그러면 OrderSend()에서 손절매가 필요한 이유는 무엇입니까?

 
ALex2008 >> :

H4용 MTS가 있는 경우 몇 분 안에 테스트를 수행할 수 있습니까?..

왜 안 돼?

가장 작은 TF에 대한 테스트는 다음과 같이 수행됩니다.

당신은 이와 같은 호출을 작성합니다 (예를 들어)

   wpr [ 1 ] =   iWPR ( Symbol ( ) , 10 , PERIOD_H4 , 1 ) ;
   wpr [ 2 ] =   iWPR ( Symbol ( ) , 20 , PERIOD_H4 , 1 ) ;
   wpr [ 3 ] =   iWPR ( Symbol ( ) , 40 , PERIOD_H4 , 1 ) ;
   wpr [ 4 ] =   iWPR ( Symbol ( ) , 60 , PERIOD_H4 , 1 ) ;


모든 TF에서 실행하면 가장 효과적이고 정확한 테스트가 될 것입니다. 1분 동안 실행하면!

즉, 그는 가장 진실할 것입니다

---

불행히도 진드기에 당신은 그것을 멀리 몰아낼 수 없습니다! MT4 테스터에는 틱 이력이 없기 때문에


---

바로 TF를 작성하는 법을 배우십시오! 그러면 EA는 어떤 TF가 출시되었는지 신경 쓰지 않을 것입니다.

상수 대신 매개 변수를 작성하는 것이 합리적입니다. 코드의 단순성과 더 이해하기 쉬운 인식을 위해 상수를 넣었습니다.

 

유리) 저는 이 사업의 전문가가 아닙니다....) 제가 이해할 수 있도록 최소한 그 의미를 설명할 수 있습니까? wpr[1] = iWPR ( Symbol(), 10 , PERIOD_H4, 1 );

 
ALex2008 >> :

유리) 저는 이 사업의 전문가가 아닙니다....) 제가 이해할 수 있도록 최소한 그 의미를 설명할 수 있습니까? wpr[1] = iWPR ( Symbol(), 10, PERIOD_H4, 1 );

iWPR은 내장 표시기입니다.

이중 iWPR(문자열 기호, int timeframe, int period, int shift)
Larry Williams의 백분율 범위 표시기 계산.
옵션:
symbol - 지표가 계산될 데이터가 있는 기기의 기호 이름입니다. NULL은 현재 문자를 의미합니다.
기간 - 기간. 차트 기간 중 하나일 수 있습니다. 0은 현재 차트의 기간을 의미합니다.
period - 지표 계산을 위한 기간(막대 수).
shift - 표시기 버퍼에서 받은 값의 인덱스(현재 막대를 기준으로 지정된 기간 이전만큼 이동).

예시:
if(iWPR(NULL,0,14,0)>iWPR(NULL,0,14,1)) return(0);

도움말에 설명되어 있습니다.

wpr[...]은 결과가 다른 기간으로 각 표시기에서 제공되는 배열입니다.

(배열의 이름은 원하는 대로 지정할 수 있습니다.)

이중 wpr[5] ;

wpr[1] = iWPR(기호(), 10, PERIOD_H4, 1);
wpr[2] = iWPR(기호(), 20, PERIOD_H4, 1);
wpr[3] = iWPR(기호(), 40, PERIOD_H4, 1);
wpr[4] = iWPR(기호(), 60, PERIOD_H4, 1);


다른 기간의 통화를 보여줬을 뿐인데...

요점은 지표에 마침표를 한 번에 작성하는 아이디어였습니다! 모든 TF에서 테스트할 수 있도록

 
요점은 지표에 즉시 기간을 작성하는 아이디어에 있었다면! 모든 TF에서 테스트 할 수 있도록 - 그런 다음 이해했습니다 ... - 고문에는 지표가 없으며 H4 양초 만 있습니다 (지표로). -TF 이제 코드의 모든 부분을 고려하여 모든 TF에서 테스트할 수 있습니다.
 

오픈 오더를 수정하기로 했습니다...

OrderSend 직후

      if (OrderSelect(0,SELECT_BY_POS)==true)
        if (OrderType()==OP_BUY)
          OrderModify ( OrderTicket ( ) , OrderOpenPrice ( ) , Stop , Take , colorBaySell ) ;


로그 오류:

OrderModify 기능에 대한 잘못된 티켓
11:43:54 2005.01.26 13:12 EURUSD: 주문수정 오류 4051
무슨 일이야?

 

다음과 같이 새로운 중지 값을 설정해야 합니다.

 OrderModify ( OrderTicket ( ) , OrderOpenPrice ( ) , Bid - Stop * Point , . . . . .
                                                    
새로운 정류장이 설정되는 곳 - 포인트 단위(정수 단위)
 

그리고 OrderModify를 위해서는 OrderClose에서 사용하는 MarketInfo ()가 필요할까요?