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

 
Bicus :

이게 뭐야? 기록의 모든 주문을 반복합니다. 맞죠? 주기의 본문에서 날짜 등으로 어떻게 든 자신을 제한 할 수 있음이 분명합니다.

내 질문에는 아마도 마지막 몇 개의 마감된 주문만 테스터의 기록에 저장되도록 하는 트릭이 있을 수 있다는 뜻입니다. 실제 역사에서 어떻게 이루어지나요?

실제 역사에서는 모든 것이 같은 방식으로 발생합니다. 계정 내역의 모든 주문이 정렬됩니다.

역사는 정확하지 않습니다. 이 계정의 유일한 이벤트이며 새 이벤트로만 추가할 수 있습니다.

 
artmedia70 :

벌써 지쳐가는 듯... 초급, 왓슨:

 //+------------------------------------------------------------------+
//| expert initialization function |
//+------------------------------------------------------------------+
int start()
{
if ( ObjectFind ( "MyPriceLine" )< 0 ) ObjectCreate ( "MyPriceLine" , OBJ_HLINE , 0 , 0 , Ask+ 20 * Point ) ;
ObjectSet( "MyPriceLine" , OBJPROP_PRICE1, Ask+ 20 * Point );
return ( 0 );
}

//+------------------------------------------------------------------+
오래 기다리신 답변 감사합니다! 이것이 내 문제를 해결하는 데 어떻게 도움이 되는지 이해할 수 없습니까? Ask 그리고 동일한 Expert Advisor의 위와 아래에 선이 동시에 그려 지도록 하려면 어떻게 해야 합니까?
 
globad :
오래 기다리신 답변 감사합니다! 이것이 내 문제를 해결하는 데 어떻게 도움이 되는지 이해할 수 없습니까? Ask 그리고 동일한 Expert Advisor의 위와 아래에 선이 동시에 그려지도록 하려면 어떻게 해야 합니까?
줄에 다른 이름을 지정합니다.
 
Vovo4ka :

여러분, 조건은 다음과 같습니다: 3개의 강세 양초, 다음 "흡수"가 있습니다.... 매수에서와 같은 방식으로 매도 포지션을 열었습니다 ... 여기에 오류가 있는 코드가 있습니다. ?

무슨 실수야?
 
sergeev :
무슨 실수야?

이렇게 안뜨네요....... 포지션이 안뜨네요.... 히스토리를 봐도 오픈 이 되어야지 포지션이 안뜨는데.. 그냥 조용하고 에러가 안나네요..
 
얘들 아, 거래를 시작하는 방법, 예를 들어 시간당 1 개 이하??
 
artmedia70 :
줄에 다른 이름을 지정합니다.

이 같은...??

 //+------------------------------------------------------------------+
//| expert initialization function                                   |
//+------------------------------------------------------------------+
int start()
{
if ( ObjectFind ( "MyPriceLine1" )< 0 ) ObjectCreate ( "MyPriceLine1" , OBJ_HLINE , 0 , 0 , Ask+ 20 * Point ) ;
ObjectSet( "MyPriceLine1" , OBJPROP_PRICE1, Ask+ 20 * Point );
if ( ObjectFind ( "MyPriceLine2" )> 0 ) ObjectCreate ( "MyPriceLine2" , OBJ_HLINE , 0 , 0 , Ask- 20 * Point ) ;
ObjectSet( "MyPriceLine2" , OBJPROP_PRICE1, Ask- 20 * Point );
return ( 0 );
}
//+------------------------------------------------------------------+
 
Vovo4ka :
얘들 아, 거래를 시작하는 방법, 예를 들어 시간당 1 개 이하??

예를 들면 다음과 같습니다.

 //+----------------------------------------------------------------------------+
datetime SecondsAfterOpenLastPos( string sy, int op, int mn) 
{
   datetime t;
   int       i, k= OrdersTotal ();

   if (sy== "0" ) sy= Symbol ();
   for (i= 0 ; i<k; i++) {
       if ( OrderSelect (i, SELECT_BY_POS, MODE_TRADES)) {
         if (OrderSymbol()!=sy)         continue ;
         if (OrderType()!=op)           continue ; 
         if (OrderMagicNumber()!=mn)   continue ; 
         if (t<OrderOpenTime()) t=OrderOpenTime();
         }
      }
   return ( TimeCurrent ()-t);
}
//+----------------------------------------------------------------------------+

다음과 같이 호출하십시오.

 if (SecondsAfterOpenLastPos( NULL , OP_SELL , Magic )>= ( Period ()* 3 )* 60 ) {
   // --- код, если прошло три минуты и более с момента открытия ... 
   // ... последней позиции Sell с магиком Magic на текущем символе ---
   }
분을 시간으로 바꾸십시오. 희망합니다 ... :)
 
globad :

이 같은...??

그리고 당신은 묻지 않고 테스터를 확인하십시오 ... :)
 
globad :

이 같은...??

 if ( ObjectFind ( "MyPriceLine1" )< 0 ) ObjectCreate ( "MyPriceLine1" , OBJ_HLINE , 0 , 0 , Ask+ 20 * Point );
                                     ObjectSet( "MyPriceLine1" , OBJPROP_PRICE1, Ask+ 20 * Point );
if ( ObjectFind ( "MyPriceLine2" )> 0 ) ObjectCreate ( "MyPriceLine2" , OBJ_HLINE , 0 , 0 , Ask- 20 * Point );
                                     ObjectSet( "MyPriceLine2" , OBJPROP_PRICE1, Ask- 20 * Point ); 
먼저 문서 에서 ObjectFind 에 대해 읽을 것입니다.) ObjectFind 는 행이 아직 생성되지 않은 경우 -1을 반환합니다. 두 번째 경우에는 ObjectFind ( "MyPriceLine2" )< 0 도 작성해야 합니다.