주문 열거 주기의 구성 - 페이지 13

 
fxsaber :

예제 템플릿은 특별히 SB를 사용하여 작성되었습니다. 따라서 질문은 MT5 전문가를 위한 것입니다. 코드가 정확합니까?

전문가는 아니지만 분명한 사실을 지적하겠습니다. 이러한 코드는 포지션 을 청산하기 위한 끝없는 시도에 들어갈 수 있습니다(예: 거래 세션 종료 시).

물론 한 줄에 있는 복잡한 조건은 코드를 단축하지만 읽기는 더 어렵게 만듭니다.

 
Andrey Khatimlianskii :

전문가는 아니지만 분명한 사실을 지적하겠습니다. 이러한 코드는 포지션 을 청산하기 위한 끝없는 시도에 들어갈 수 있습니다(예: 거래 세션 종료 시).

할 수 없습니다.

물론 한 줄에 있는 복잡한 조건은 코드를 단축하지만 읽기는 더 어렵게 만듭니다.

이 경우 간결함은 가까이에 있습니다. 전체 차량이 화면에 표시됩니다.

 
fxsaber :

문자 그대로 이해하면 Market Watch에서 각 기호의 과거 틱 기록도 읽을 수 있습니다. 그러나 나는 당신이 그 말의 의미를 실제로 이해하고 있다고 생각합니다.

코드는 이 명령문을 구현하는 것 같습니다. 따라서 MT5를 이해하는 모든 사람을 위한 질문이 있었습니다. 코드가 정확합니까?

글쎄요, 우리는 프로그래머입니다.

그래서 이해했다...

악이 없습니다.

 

fxsaber :

따라서 MT5를 이해하는 모든 사람을 위한 질문이 있었습니다. 코드가 정확합니까?

코드는 별로 보이지 않았습니다. 누가 SB를 적극적으로 사용합니까(정확히 말하면 거래 클래스가 아닙니다.

 
Artyom Trishkin :

코드는 별로 보이지 않았습니다. 누가 SB를 적극적으로 사용합니까(정확히 말하면 거래 클래스가 아닙니다.

SB가 정상적으로 작동하는 드문 경우가 있습니다. 템플릿은 스켈레톤입니다. 물론 속살, 연꽃 등 어떤 고기든 넣을 수 있습니다. 그러나 기초는 남을 것입니다.

템플릿은 최소한의 노력으로 MT4로 다시 작성되며 100% 작동합니다. 그러나 MT5에서 - 이것은 참으로 좋은 질문입니다!

 
fxsaber :

SB가 정상적으로 작동하는 드문 경우가 있습니다. 템플릿은 스켈레톤입니다. 물론 속살, 연꽃 등 어떤 고기든 넣을 수 있습니다. 그러나 주요 기반은 유지됩니다.

템플릿은 최소한의 노력으로 MT4로 다시 작성되며 100% 작동합니다. 그러나 MT5에서 - 이것은 참으로 좋은 질문입니다!

새벽 5시가 아닌 신선한 마음으로 그곳에서 무언가를 보려고 노력해야 합니다. :)

안전보장이사회를 잘 아는 사람들 중 아무도 구독을 취소하지 않는다면 일어날 가능성이 있는 자갈을 계산하는 것이 가능할 것입니다.

 
fxsaber :

템플릿은 최소한의 노력으로 MT4로 다시 작성되며 100% 작동합니다.

MT4로 다시 작성

 // Шаблон большинства ТС

#property strict // обязательно

// Сигнал на покупку
bool BuySignal( const string Symb ) { return ( true ); }

// Сигнал на продажу
bool SellSignal( const string Symb ) { return ( false ); }

// Находит ордер соответствующего типа
bool OrdersScan( const string Symb, const int Type )
{
   for ( int i = OrdersTotal () - 1 ; i >= 0 ; i--)
     if ( OrderSelect (i, SELECT_BY_POS ) && ( OrderType () == Type) && ( OrderSymbol () == Symb))
       return ( true );    
    
   return ( false );  
}

// Торговое действие на сигнал
bool Action( const string Symb, const int Type, const double Lots = 1 )
{
   bool Res = true ;    
  
   // Закрыли противоположные сигналу позиции
   while ((OrdersScan(Symb, 1 - Type)) && (Res = OrderClose ( OrderTicket (), OrderLots (), OrderClosePrice (), 100 )));

   // Открыли позицию по сигналу
   return (Res && !OrdersScan(Symb, Type) && OrderSend (Symb, Type, Lots, SymbolInfoDouble (Symb, Type ? SYMBOL_BID : SYMBOL_ASK ), 100 , 0 , 0 ));
}

// Шаблон торговой стратегии
void Strategy( const string Symb )
{
   if (BuySignal(Symb))
    Action(Symb, OP_BUY );
   else if (SellSignal(Symb))
    Action(Symb, OP_SELL );
}

void OnTick ()
{
  Strategy( _Symbol );
}

그러나 MT5에서 - 이것은 참으로 좋은 질문입니다!

MT5에 대한 흥미로운 의견.
 
fxsaber :

할 수 없습니다.

네 맞습니다. 완료해야 할 때 단순히 위치를 닫지 않을 수 있습니다.


fxsaber :

이 경우 간결함은 가까이에 있습니다. 전체 차량이 화면에 표시됩니다.

최소 5줄은 쓸 수 있습니다. 읽기가 쉽지 않습니다.

내 인식을 공유합니다.

 
Andrey Khatimlianskii :

네 맞습니다. 완료해야 할 때 단순히 위치를 닫지 않을 수 있습니다.

저는 MT4를 더 친숙하게 만들기 위해 특별히 MT4에 변형을 작성했습니다. MT4와 MT5 옵션은 동일한 것 같습니다. SB - 정확히 주문. MT4 옵션이 100% 작동한다고 가정합니다. 저것들. 작은 충돌은 건너뛰자.

최소 5줄은 쓸 수 있습니다. 읽기가 쉽지 않습니다.

내 인식을 공유합니다.

예, 다른 사람의 코드 - 어둠.

 
fxsaber :

저는 MT4를 더 친숙하게 만들기 위해 특별히 MT4에 변형을 작성했습니다. MT4와 MT5 옵션은 동일한 것 같습니다. SB - 정확히 주문.

그리고 OrderClose는 거래를 마감하는 것을 보장합니까?


fxsaber :

예, 다른 사람의 코드 - 어둠.

아니요, 항상 그런 것은 아닙니다. 스타일에 대해 이야기하고 있습니다.