이치모쿠 전략 - 페이지 3

 

좋아, 지금은 전략 테스트 에서 작동하지만, 1분에 여러 번 거래가 한 번 이상 발생합니다. 어떤 코드 비트를 변경해야 합니까?

그리고 나는 너희들이 지금쯤 상당히 짜증이 났을 것이라는 것을 이해하지만, 당신이 묻지 않는다면 당신은 이해하지 못한다.

 //+------------------------------------------------------------------+
//|                                              ICHIMOKU_SIMPLE.mq4 |
//|                      Copyright © 2012, MetaQuotes Software Corp. |
//|                                        http://www.metaquotes.net |
//+------------------------------------------------------------------+
#property copyright "Copyright © 2012, MetaQuotes Software Corp."
#property link       "http://www.metaquotes.net"

extern double Lots = 1.0 ; 
//----
int start()
   {
   double tenkan_sen= iIchimoku ( NULL , 0 , 9 , 26 , 52 , MODE_TENKANSEN, 1 );
   double kijun_sen= iIchimoku ( NULL , 0 , 9 , 26 , 52 , MODE_KIJUNSEN, 1 );
   int ticket;
//----

// check for long position (BUY) possibility
       if (tenkan_sen>kijun_sen)
         {
         ticket= OrderSend ( Symbol (),OP_BUY,Lots,Ask, 3 , 0 ,Ask+ Point , "ichimoku" , 16384 , 0 , Green );
         if (ticket> 0 )
            {
             if ( OrderSelect (ticket,SELECT_BY_TICKET,MODE_TRADES)) Print ( "BUY order opened : " , OrderOpenPrice ());
            }
         else Print ( "Error opening BUY order : " , GetLastError ()); 
         return ( 0 ); 
         
         }   //  added by RaptorUK
            
   // SELL 
     {
       OrderSelect (SELECT_BY_POS, MODE_TRADES);
       if ( OrderType ()<=OP_SELL && // check for opened position 
         OrderSymbol ()== Symbol ()) // check for symbol
         {
         if ( OrderType ()==OP_BUY) // long position is opened
            {
             // should it be closed?
             if (tenkan_sen<kijun_sen)   //  removed surplus (  RaptorUK
               {
               OrderClose ( OrderTicket (), OrderLots (),Bid, 3 , Violet ); // close position
               return ( 0 ); // exit
               }
            }
         }
      }
   return ( 0 );
   }
 
ToBa :

좋아, 지금은 전략 테스트에서 작동하지만, 1분에 여러 번 거래가 한 번 이상 발생합니다. 어떤 코드 비트를 변경해야 합니까?

그리고 나는 너희들이 지금쯤 상당히 짜증이 났을 것이라는 것을 이해하지만, 당신이 묻지 않는다면 당신은 이해하지 못한다.

짜증이 난 ? 아니, 내가 아니다. . . 단지 당신이 배우는 것을 돕기 위해 노력하고 있고 당신은 그렇게 하고 있는 것 같습니다. . . 이제 계속 배워야 합니다.
 

알겠습니다. 이 줄과 관련이 있다는 것을 압니다.

하지만 숫자가 의미하는 바를 모르겠습니다. 일부 부품을 삭제하려고 했지만 ')'가 표시됩니다. 잘못된 매개변수 개수 C:\Program Files (x86)\MetaTrader 4\experts\ICHIMOKU_F1.mq4 (21, 51)

ticket= OrderSend ( Symbol (),OP_BUY,Lots,Ask, 3 , 0 ,Ask+ Point , "ichimoku" , 16384 , 0 , Green );
 
설명서를 읽으십시오. . . 이것을 클릭하십시오 --> OrderSend
 
ToBa :

좋아, 지금은 전략 테스트에서 작동하지만, 1분에 여러 번 거래가 한 번 이상 발생합니다.

먼저 1분에 여러 번 주문하는 대신 원하는 작업을 파악해야 합니다. . . .
 

좋아, 나는 상당한 진전을 이루었다. 그러나 t/p는 페어 가격이 0.0001 증가하는 즉시 실행됩니다.

이제 코드는 다음과 같습니다.

 //+------------------------------------------------------------------+
//|                                              ICHIMOKU_SIMPLE.mq4 |
//|                      Copyright © 2012, MetaQuotes Software Corp. |
//|                                        http://www.metaquotes.net |
//+------------------------------------------------------------------+
#property copyright "Copyright © 2012, MetaQuotes Software Corp."
#property link       "http://www.metaquotes.net"

extern double Lots = 1.0 ;
//----

int start()
   {
   double tenkan_sen= iIchimoku ( NULL , 0 , 9 , 26 , 52 , MODE_TENKANSEN, 1 );
   double kijun_sen= iIchimoku ( NULL , 0 , 9 , 26 , 52 , MODE_KIJUNSEN, 1 );
   int ticket,total,order_id;
   
// BUY
      total= OrdersTotal ();
   if (total< 1 && tenkan_sen>kijun_sen)
         {
         ticket= OrderSend ( Symbol (),OP_BUY,Lots,Ask, 3 , 0 ,Ask+ Point , "ichimoku" , 16384 , 0 , Green );
         } 
                      
// SELL 
   if (tenkan_sen<kijun_sen)   
         {
         OrderClose (order_id, 1 ,Ask, 3 , Red );
         return ( 0 );
         }     
   return ( 0 );
   }
 
at/p는 자동으로 배치되는 것 같습니다. 어떤 부분을 바꿔야 할지 모르겠다
 
ToBa :
at/p는 자동으로 배치되는 것 같습니다. 어떤 부분을 바꿔야 할지 모르겠다
OrderSend 의 일부입니다. . .
 
이제 알겠습니다. - Ask+*Point 하지만 숫자를 넣는 것보다 t/p가 될 때 tenkan-sen<kijun-sen
 
0 으로 설정 하면 tenkan-sen<kijun-sen일 때와 주문을 닫을 때 를 계속 확인 해야 합니다. . . . 이것의 단점은 미결 주문이 있고 인터넷 연결이 끊기면 거래가 계속 열려 있고 승리한 거래가 패배하는 거래로 바뀔 수 있다는 것입니다.
사유: