포럼을 어지럽히 지 않도록 모든 초보자 질문. 프로, 놓치지 마세요. 너 없이는 아무데도 - 6. - 페이지 609

 
artmedia70 :

그리고 거기에도 있습니다. 당연히 하나는 다른 하나와 모순되지 않습니다. 그는 요청에서 Bai에 대한 중지 명령을 고려합니다. 정규화하지 않습니다. StopLevel 거리 제한을 확인하지 않습니다.

요컨대 - 잡동사니.



이해했습니다. 감사합니다. 가격이 정말 엉망이네요, 수정하겠습니다. 대기 중인 주문 을 하기 전에 stoplevel을 확인합니다. 또한 동일한 이가 정지 및 손실을 확인합니다.

이 특별한 경우 브로커의 조건에 따른 스탑 레벨 = 0이고 스탑과 이익이 훨씬 더 설정됩니다. 시장가 주문의 가격은 내가 아는 한 가장 가까운 시장 가격에서 열리고 스탑 레벨은 그것과 아무 관련이 없습니다. 그래서?

 
artmedia70 :

매수, 정지 및 매수는 입찰 가격에서 계산됩니다. 이것은 한 번입니다.

둘째, 스탑 오더 가격을 계산한 후에는 정규화해야 합니다. 이전 SL과 TP가 정규화되었다는 사실은 넌센스입니다. 그런 다음 거래 주문 자체에서 표현식의 정규화되지 않은 값을 대체합니다.

셋째, 모든 가격은 거래 작업을 수행할 때 요구 사항 및 제한 사항을 준수해야 합니다. 예를 들어, StopLevel 레벨은 중지 주문의 크기보다 클 수 있습니다.



거래요청 내에서 값을 정규화해야 한다는 것을 정확히 이해하고 있었나요?
 
어제의 TIME Low를 우아하게 찾는 방법을 알려주세요. 그리고 나서 부피가 큰 디자인이 몇 개 나옵니다.
 
001 :
어제의 TIME Low를 우아하게 찾는 방법을 알려주세요. 그리고 나서 부피가 큰 디자인이 몇 개 나옵니다.

가격 채널 표시기( Donchian 채널 )를 찾고 깊이를 일일 기간 1로 설정합니다.
 
YOUNGA :

가격 채널 표시기(Donchian 채널)를 찾고 깊이를 일일 기간 1로 설정합니다.
감사합니다. 내가 찾는 동안 다른 사람이 선택권을 가질 수 있습니까?
 

좋은 오후, 코드를 도와주세요.

이 구현에서는 시장 주문 매수 및 매도에 대한 별도의 평균이 있습니다. 마지막 열린 주문이 시리즈의 일반적인 수정에 속하지 않도록 어떻게 구현할 수 있습니까?

extern int t= 10 ;

///////////////////////////////////////////////////////
       int kolOK= 0 ;
//   int i=0;
   int kol1= 0 ;
   int kol2= 0 ;
   double lots1= 0 ;
   double lots2= 0 ;
   double sum0= 0 ;
   double sum= 0 ;
   // double sum1=0;
   /////////////////////////////////////////////////////////////////////
   int Total = OrdersTotal ();
   for ( int i=Total- 1 ; i>= 0 ; i--)
   {
       if (! OrderSelect (i,SELECT_BY_POS,MODE_TRADES)) continue ;
       if (OrderSymbol()!= Symbol ()) continue ;
       if (OrderType()==OP_BUY)
      {
       lots1=lots1+OrderLots();
       sum0=sum0+OrderLots()*OrderOpenPrice();
       // sum1=sum1+OrderProfit( )+OrderSwap( )+OrderCommission( )  ; 
       kol1=kol1+ 1 ;
      }
       if (OrderType()==OP_SELL)
      {
       lots2=lots2+OrderLots();
       sum=sum+OrderLots()*OrderOpenPrice();
       // sum1=sum1+OrderProfit( )+OrderSwap( )+OrderCommission( )  ;
       kol2=kol2+ 1 ;
      }
   }
   ////////////////////////////////////////////////////////////////////////////
   double zeroprice1= 0 ;
   double zeroprice2= 0 ;
   if (lots1!= 0 ) zeroprice1=sum0/lots1;
   if (lots2!= 0 ) zeroprice2=sum/lots2;
   zeroprice1 = ( MathRound (zeroprice1* MathPow ( 10 , Digits )))/ MathPow ( 10 , Digits );
   zeroprice2 = ( MathRound (zeroprice2* MathPow ( 10 , Digits )))/ MathPow ( 10 , Digits );

 int res1 = 0 ;
 int res2 = 0 ;

 double zeroprice10 = NormalizeDouble (zeroprice1 + t* Point , Digits );
 double zeroprice20 = NormalizeDouble (zeroprice2 - t* Point , Digits );
 if (zeroprice10 != 0 || zeroprice20 != 0 ) {
   int Total2 = OrdersTotal ();
   for ( int in=Total2- 1 ; in>= 0 ; in--)
   {
       if (! OrderSelect (in,SELECT_BY_POS,MODE_TRADES)) continue ;
       if (OrderSymbol()!= Symbol ()) continue ;     

           if (OrderType()==OP_BUY) { if (zeroprice10 == NormalizeDouble (OrderTakeProfit(), Digits )) res1=res1+ 1 ; else { if (OrderModify(OrderTicket(),OrderOpenPrice(),OrderStopLoss(),zeroprice10, 0 , CLR_NONE )) res1 = res1+ 1 ;} }

           if (OrderType()==OP_SELL){ if (zeroprice20 == NormalizeDouble (OrderTakeProfit(), Digits )) res2=res2+ 1 ; else { if (OrderModify(OrderTicket(),OrderOpenPrice(),OrderStopLoss(),zeroprice20, 0 , CLR_NONE )) res2 = res2+ 1 ;} } 
       }   
   }
 
fmv_for_a_way :


이해했습니다 감사합니다. 가격이 정말 엉망이네요, 수정하겠습니다. 대기 중인 주문을 하기 전에 Stoplevel을 확인합니다. 또한 동일한 이가 정지 및 손실을 확인합니다.

이 특별한 경우 브로커의 조건에 따른 스탑 레벨 = 0이고 스탑과 이익이 훨씬 더 설정됩니다. 시장가 주문의 가격은 내가 아는 한 가장 가까운 시장 가격에서 열리고 스탑 레벨은 그것과 아무 관련이 없습니다. 그래서?

아니 이런 식으로. Alpari는 이중 스프레드를 StopLevel로 사용합니다.
 
fmv_for_a_way :

거래요청 내에서 값을 정규화해야 한다는 것을 정확히 이해하고 있었나요?
꼭 내부에 있을 필요는 없습니다. 하지만 보내기 직전에 - 그렇습니다.
 
artmedia70 :
꼭 내부에 있을 필요는 없습니다. 하지만 보내기 직전에 - 그렇습니다.


고맙습니다. 해결책을 찾겠습니다.
 
여러분, MT4 625 어셈블리를 다운로드할 수 있는 곳을 알려주세요.