5 wmz에 대해 하나의 스크립트를 실행합니다. - 페이지 15

 

상품 시장에는 놀라운 일중 일관성으로 가격이 자주 변동하는 상품이 있습니다! 이 기술이 (내 의견으로는) 매우 잘 작동하는 것은 그러한 도구에 있습니다. 나쁘지 않다!

예를 들어, NGV0(천연 가스)의 어제와 오늘 가격 움직임을 보고 "10가지 차이점을 찾으십시오"라고 말합니다...

 

레오니드. 예, 나는 누군가가 번영하는 것을 신경 쓰지 않습니다. 건강을 위해! 질문이 하나 있습니다. 2년 전 이 우승자들은 어디에 있었나요? 왜 2008년에는 아무도 왼발 발가락으로 1000% 다치지 않았습니까?

 

그리고 트렌드의 징후에 관해서는 오랫동안 많은 사본이 여기에서 깨졌고 유용한 것조차도 이루어졌습니다. 예를 들어, 여기 https://www.mql5.com/ru/articles/1508#6586 그러나 거기에서는 일종의 진흙 투성이 표시기(내가 좋아하지 않는)를 사용하는 것이 좋습니다. (Leonid와 같은) 양초의 색을 보는 것이 더 나을 것입니다. 그러나 여전히 이 스레드의 작성자의 방법은 시간 패턴의 정직한 식별과 전혀 다릅니다! 일종의 수비학이 여기에서 이미 시작되고 있습니다 ... 많은 사람들이 그것을 아이러니로 인식하는 이유라고 생각합니다.

 

pre가 없는 일반적으로 컴파일된 Expert Advisor가 있는 이유를 알려주세요. 오류가 테스트되지 않고 단일 트랜잭션이 없습니다. 누락된 항목은 무엇입니까?

 extern double Lots          = 0.1 ;
extern double StopLoss      = 120 ;
extern double TakeProfit    = 120 ;

//+------------------------------------------------------------------+
//| expert start function                                            |
//+------------------------------------------------------------------+
int start()
  {
   int cnt, ticket, total;
   static int prevtime = 0 ;
   
        total= OrdersTotal ();
if (total< 1 ){   //если  нет открытых позиций
//+------------------------------------------------------------------+
//|               Открытие позиций понедельника                      |
//+------------------------------------------------------------------+
if ( DayOfWeek()== 5 ){ //если сегодня вечер пятницы
if ( Hour() == 23 )  { //если - 22 часа терминального времени
// BUY
       if ( Close[ 1 ]<= Open[ 24 ] && Close[ 23 ]<=Open[ 48 ] && Close[ 47 ]<=Open[ 72 ]) {    
        
         ticket= OrderSend ( Symbol (),OP_BUY,Lots,Ask+StopLoss* Point , 3 , 0 ,Ask+TakeProfit* Point , "Regulest" , 0 , 0 , Green );}
         if (ticket < 0 ) {
             Print ( "Ошибка открытия ордера BUY #" , GetLastError ()); 
             Sleep ( 10000 );  prevtime = Time[ 1 ];   return ( 0 ); }}
// SELL
if ( DayOfWeek()== 5 ){ //если сегодня вечер пятницы
if ( Hour() == 23 )  { //если - 22 часа терминального времени
     if ( Close[ 1 ]>= Open[ 24 ] && Close[ 23 ]<=Open[ 48 ] && Close[ 47 ]<=Open[ 72 ]) {
    
         ticket= OrderSend ( Symbol (),OP_SELL,Lots,Bid-StopLoss* Point , 3 , 0 ,Bid-TakeProfit* Point , "Regulest" , 0 , 0 , Red );
         if (ticket < 0 ) {
             Print ( "Ошибка открытия ордера SELL #" , GetLastError ()); 
             Sleep ( 10000 );  prevtime = Time[ 1 ];   return ( 0 ); }
          } 
        }
       return ( 0 );
     }}}
//+------------------------------------------------------------------+
//|                     Закрытие позиций                             |
//+------------------------------------------------------------------+
       if (OrderType()<=OP_SELL && OrderSymbol()== Symbol ())  
        {
         if (OrderType()==OP_BUY)   // long position is opened
           {
             // should it be closed?
             if ( DayOfWeek()== 1   && Hour() == 22 )
                {
                 OrderClose(OrderTicket(),OrderLots(),Bid, 3 , Violet ); // close position
                 return ( 0 ); // exit
                }
              }
           }
         else // go to short position
           {
             // should it be closed?
             if ( DayOfWeek()== 1   && Hour() == 22 )
              {
               OrderClose(OrderTicket(),OrderLots(),Ask, 3 , Violet ); // close position
               return ( 0 ); // exit
              }      
           }  
   return ( 0 );
  }  
//+------------------------------------------------------------------+
 
Profitabl :

pre가 없는 일반적으로 컴파일된 Expert Advisor가 있는 이유를 알려주세요. 오류가 테스트되지 않고 단일 트랜잭션이 없습니다. 누락된 항목은 무엇입니까?

조건이 충족되지 않을 수 있습니다. 예를 들어 Alpari에는 금요일에 시간 값이 23인 막대가 없습니다. 귀하의 의견과 같이 22를 입력하십시오.

 if ( Hour() == 23 )  { //если - 22 часа терминального времени
 

아니, 그게 이유가 아니야. 그리고 테스터에서 완벽하게 테스트되었지만 "EA가 거래하도록 허용" 옵션이 활성화된 상태에서 거래되지 않는 전체 CHF EA를 다시 컴파일하려면 이것이 필요합니다. 전문가로서 EA 설정에 대해 무엇을 말할 수 있습니까? 그건 그렇고, 화요일에 고문이 거래를 했지만 그 다음에는 코드로 무엇을 했고 그는 거래를 중단했습니다. 일반 Expert Advisor가 종료되는 이유는 무엇입니까?

 
모든 틱이 포함된 보고서를 게시합니다. 이렇게 긴 기간에 거친 테스트 방법은 완전히 객관적인 결과를 제공하지 않습니다. 그건 그렇고, 시작 기능 의 시작 가격 대신 정지 손실을 설정하려는 시도가 있기 때문에 그러한 코드가 적어도 일부 결과를 제공하는 방법은 매우 흥미 롭습니다.)) 이것은 일종의 유치원입니다 :) )
 
lasso :

조건이 충족되지 않을 수 있습니다. 예를 들어 Alpari에는 금요일에 시간 값이 23인 막대가 없습니다. 귀하의 의견과 같이 22를 입력하십시오.


StopLoss는 "Ask-StopLoss*Point", "Bid-StopLoss*Point"에 의해 제거되었고 테스트를 시작했지만, 그들과 함께 테스트하려면 어떻게 해야 합니까?

       if ( Close[ 1 ]<= Open[ 24 ] && Close[ 23 ]<=Open[ 48 ] && Close[ 47 ]<=Open[ 72 ]) {    
        
         ticket= OrderSend ( Symbol (),OP_BUY,Lots,Ask, 3 , 0 ,Ask+TakeProfit* Point , "Regulest" , 0 , 0 , Green );}
         if (ticket < 0 ) {
             Print ( "Ошибка открытия ордера BUY #" , GetLastError ()); 
             Sleep ( 10000 );  prevtime = Time[ 1 ];   return ( 0 ); }}
// SELL
if ( DayOfWeek()== 5 ){ //если сегодня вечер пятницы
if ( Hour() == 23 )  { //если - 22 часа терминального времени
     if ( Close[ 1 ]>= Open[ 24 ] && Close[ 23 ]<=Open[ 48 ] && Close[ 47 ]<=Open[ 72 ]) {
    
         ticket= OrderSend ( Symbol (),OP_SELL,Lots,Bid, 3 , 0 ,Bid-TakeProfit* Point , "Regulest" , 0 , 0 , Red );
 
Techno :
모든 틱이 포함된 보고서를 게시합니다. 이렇게 긴 기간에 거친 테스트 방법은 완전히 객관적인 결과를 제공하지 않습니다. 그건 그렇고, 시작 기능의 시작 가격 대신 정지 손실을 설정하려는 시도가 있기 때문에 그러한 코드가 적어도 일부 결과를 제공하는 방법은 매우 흥미 롭습니다.)) 이것은 일종의 유치원입니다 :) )


나는 StopLoss를 하나의 쉼표로 옮겼습니다. 2년 동안 하지 않은 것을 기억하고 모든 것이 테스트되었습니다. 틱은 필요없고, 보는 조건은 "어제, 어제, 오늘"="내일", HHH=BUY, HHB=SELL이며 트랜잭션이 필요한 것과 동일합니다. 3천만 기간 동안 포지션을 열 수 없기 때문에 예측의 정확도가 더 낮고 거래의 약 69%가 수익성이 있으며 수동으로 더 정확하게 예를 들어 연간 327%의 차트는 254건의 거래를 기반으로 작성되며 72%의 거래 수익성.

어드바이저 는 공들여 설정했고, 40개의 예측 각각에는 고유한 S\L 및 T\P가 있고, 총 -700ps의 일부 예측은 단순히 불확실한 것으로 대체되었지만 테스터에서 정제되었으며 로트 계산 블록은 10입니다. 보증금의 %, 136주 동안의 1070%는 백으로 시작하면 8422476%의 이익이 됩니다. 손실 위험은 상대적으로 작고 1000%의 일정한 마진으로 최대 8번의 연속 손실 거래는 쉽게 양도되며 중요한 순간은 약 14-16번의 연속 손실 거래로 이 기술로는 거의 불가능합니다. 분석 시스템.

테스터의 위치는 이미 핸들로 복제할 수 있지만 어드바이저가 자체적으로 거래하고 임대 서버에 연결하는 것이 좋습니다.

코드를 보여주거나 조언을 제공할 수 없기 때문에 코드에서 트랜잭션을 방지하는 항목을 결정하는 데 도움이 되지 않습니다. 이것은 금융 위기와 채무 불이행을 유발할 수 있는 심리적 무기입니다. 외환에서 오프닝은 무해하고 도움이 됩니다 이윤을 남기기 위한 것이지만 이 패턴은 과학의 모든 분야에 어디에나 있습니다.

즉, 예측 테이블을 받으면 일주일 만에 동일한 Expert Advisor를 만들 수 있습니다.

 

먼저 주요 오류를 수정하십시오.

포지션 을 청산하는 옵션은 조건 안에 있습니다

  
        total= OrdersTotal ();
if (total< 1 ){  //если  нет открытых позиций

여기에서 논리를 볼 수 있습니까? 포지션(포지션)이 존재하지 않는 경우 포지션은 어떻게 마감됩니까?

사유: