요새. 실행 질문 - 페이지 88

 
fxsaber :

리미터가 FOK일 수 있습니까?

좋은 질문.

즉, (빨간색으로 강조 표시된) 지정가 주문은 고정 가격으로 실행되기 때문에 FOK가 될 수 없습니다.

하지만 다른 한편으로는 볼륨이 충분할 수도 있습니다 ....


ORDER_FILLING_FOK

Данная политика исполнения означает, что ордер может быть исполнен исключительно в указанном объеме.
Если на рынке в данный момент не присутствует достаточного объема финансового инструмента, то ордер не будет исполнен.
Необходимый объем может быть составлен из нескольких предложений, доступных в данный момент на рынке.
FOK일 수 있다고 생각하지만(FOK는 사용하지 않음) 볼륨을 확인해야 합니다.
 
prostotrader :

좋은 질문.

즉, (빨간색으로 강조 표시된) 지정가 주문은 고정 가격으로 실행되기 때문에 FOK가 될 수 없습니다.

하지만 다른 한편으로는 볼륨이 충분할 수도 있습니다 ....


ORDER_FILLING_FOK

Данная политика исполнения означает, что ордер может быть исполнен исключительно в указанном объеме.
Если на рынке в данный момент не присутствует достаточного объема финансового инструмента, то ордер не будет исполнен.
Необходимый объем может быть составлен из нескольких предложений, доступных в данный момент на рынке.

네, 그냥 도움말 곡선입니다. Limitnik은 항상 RETURN 유형의 채우기입니다. FOK, IOC - 시장 전용.

그러나 이것은 거래소와 ECN에만 적용됩니다. 지정가 주문이 가상 주문인 STP도 있으므로 해당 시장 주문 생성의 개시자일 뿐이므로 FOK/IOC가 가능합니다. 그러나 이것은 화면에서만 플레이어를 제한하며 실제로는 그렇지 않습니다.

 
fxsaber :
네, 그냥 도움말 곡선입니다. Limitnik은 항상 RETURN 유형의 채우기입니다. FOK, IOC - 시장 전용.

사실이 아닙니다. 항상 제한을 사용하지만 IOC에서만 사용합니다.

3년 이상

직접 확인해보세요 :)

추가됨

지정가 주문은 시장가 주문과 동일하지만 실행 가격을 설정하면 끝입니다!

가격이 있습니다 - 이행됨, 제거 없음.

실행 정책

브로커가 설정한 일반 주문 실행 규칙 외에도 거래자는 주문 설정 창의 "채우기" 필드에서 추가 조건을 지정할 수 있습니다.

  • 모두/없음(채우기 또는 죽이기)
    이 실행 정책은 지정된 볼륨에서만 주문을 실행할 수 있음을 의미합니다. 현재 시장에 금융 상품의 양이 충분하지 않으면 주문이 실행되지 않습니다. 필요한 볼륨은 현재 시장에서 사용할 수 있는 여러 제안으로 구성될 수 있습니다.
  • 전체/부분(즉시 또는 취소)
    이 경우 거래자는 주문에 지정된 한도 내에서 시장에서 사용할 수 있는 최대 거래량으로 거래하는 데 동의합니다. 전체 실행이 불가능한 경우, 가용 수량만큼 주문이 실행되며, 채워지지 않은 주문 수량은 취소됩니다. IOC 주문 사용 가능성은 거래 서버에서 결정됩니다.
  • 반품
    이 모드는 시장(구매 및 판매), 지정가 및 지정가 지정가 주문에 사용되며 "시장 실행" 및 "거래소 실행" 모드에서만 사용됩니다. 부분실행의 경우 잔여 물량이 있는 시장가 또는 지정가 주문은 취소되지 않고 계속 운영됩니다.

실행 모드에 따른 실행 정책의 적용은 다음과 같은 표 형태로 표현될 수 있다.

실행 모드\실행 정책

전부/무(FOK)

전체/부분(IOC)

반품

즉시 실행

+

요청 시 버전

+

시장 실행

+

+

+

거래소 실행

+

+

+

 
prostotrader :

사실이 아닙니다. 항상 제한을 사용하지만 IOC에서만 사용합니다.

3년 이상

직접 확인해보세요 :)

  1. 스프레드 내부의 10랏에 대해 IOC-BuyLimit를 설정하고 즉시 SELL 1랏을 만듭니다. 예상되는 반응은 1랏에 대해 동일한 가격(0 이익, 두 배 커미션)으로 2개의 반대 거래이고 9랏이 취소되는 것입니다.
  2. 우리는 스프레드 내부의 10랏에 대해 FOK-BuyLimit를 설정하고 즉시 SELL 1랏을 만듭니다. 예상되는 반응은 1랏에 대해 SELL이고 10랏이 취소됩니다.

당신은 이것을 만나지 않을 것입니다. 그리고 리미터에 대한 요청에서 FOK/IOC 유형의 설정을 롤링한다는 사실이 이것이 이러한 유형임을 의미하지는 않습니다.

 
fxsaber :

  1. 스프레드 내부의 10랏에 대해 IOC-BuyLimit를 설정한 다음 즉시 SELL 1랏을 만듭니다. 예상되는 반응은 1랏에 대해 동일한 가격(0 이익, 두 배 커미션)으로 2개의 반대 거래이고 9랏이 취소되는 것입니다.
  2. 우리는 스프레드 내부의 10랏에 대해 FOK-BuyLimit를 설정하고 즉시 SELL 1랏을 만듭니다. 예상되는 반응은 1랏에 대해 SELL이고 10랏이 취소됩니다.

당신은 이것을 만나지 않을 것입니다. 그리고 리미터에 대한 요청에서 FOK/IOC 유형의 설정을 롤링한다는 사실이 이것이 이러한 유형임을 의미하지는 않습니다.

위의 표를 보십시오.

FOK는 모든 모드에서 사용할 수 있습니다.

FOK를 사용하면 볼륨을 확인해야 하지만 주문이 실행된다는 보장은 없습니다.

필요한 양의 거래소에 "오는" 주문은 (이미 손상되지 않음), 따라서

FOK 신청서의 불완전한 조정

 
prostotrader :

주문이 Exchange에 "오면" 필요한 볼륨을 사용할 수 없을 수 있으므로(이미 부식됨)

FOK 신청서의 불완전한 조정

커브 도움말. 이것은 제한에 적용되지 않습니다. 이상으로 확인하기 쉬운 두 가지 경우를 말씀드렸습니다. 현재 가격보다 나쁘지 않은 가격으로 설정된 경우 FOK/IOC 제한이 없기 때문에 재생할 수 없습니다.
 
fxsaber :
커브 도움말. 이것은 제한에 적용되지 않습니다. 이상으로 확인하기 쉬운 두 가지 경우를 말씀드렸습니다. 현재 가격보다 나쁘지 않은 가격으로 설정된 경우 FOK/IOC 제한이 없기 때문에 재생할 수 없습니다.

나는 환상이 아니라 실제 계정 에 고문에 의해 배치되는 내 주문에 대해 이야기하고 있습니다.

지금 생각하는 대로 행동하고 싶다면 자유의지!

 
prostotrader :

나는 환상이 아니라 실제 계정 에 고문에 의해 배치되는 내 주문에 대해 이야기하고 있습니다.

지금 생각하는 대로 행동하고 싶다면 자유 의지는 자유입니다!

철 논리

거래, 자동 거래 시스템 및 거래 전략 테스트에 관한 포럼

요새. 실행 질문

fxsaber , 2017.02.22 22:50

  1. 스프레드 내부의 10랏에 대해 IOC-BuyLimit를 설정한 다음 즉시 SELL 1랏을 만듭니다. 예상되는 반응은 1랏에 대해 동일한 가격(제로 이익, 두 배 커미션)으로 2개의 반대 거래이고 9랏이 취소되는 것입니다.
  2. 우리는 스프레드 내부의 10랏에 대해 FOK-BuyLimit를 설정하고 즉시 SELL 1랏을 만듭니다. 예상되는 반응은 1랏에 대해 SELL이고 10랏이 취소됩니다.

당신은 이것을 만나지 않을 것입니다.

FOK/IOC 제한 여부를 확인하는 명확한 기준이 있는지 여부를 주장하는 이유는 무엇입니까?
 
fxsaber :
철 논리
FOK/IOC 제한 여부를 확인하는 명확한 기준이 있는지 여부를 주장하는 이유는 무엇입니까?

죄송합니다. IOC 채우기와 함께 LIMIT 주문을 사용한다고 쓴 것을 눈치채지 못했을 것입니다.

//+------------------------------------------------------------------+
//| Expert set order function                                        |
//+------------------------------------------------------------------+
void SetOrder( const string aSymbol, uint &order_id, const double price, const double volume, const bool buy_sell)
{
   MqlTradeRequest request = { 0 };
   MqlTradeResult   result  = { 0 };
  main_order_ticket = 0 ;
  main_mem_magic = magic_storage + 1 ;
  main_order_symbol = aSymbol;
//---  
   if (main_mem_magic >= (magic_number + 65530 )) main_mem_magic = magic_number;
  
//--- Fill structure
  request.magic = main_mem_magic;
  request.symbol = aSymbol;
  request.volume = volume;
  request.type_filling = ORDER_FILLING_IOC ;
  request.type_time = ORDER_TIME_DAY ;
    
   if (price == 0 )
  {
    request.action = TRADE_ACTION_DEAL ;
    request.comment = "Рыночный ордер..." ;
//---    
     if (buy_sell)
    {
      request.type = ORDER_TYPE_BUY ;
    }
     else
    {
      request.type = ORDER_TYPE_SELL ;
    }
  }
   else
  {
    request.action = TRADE_ACTION_PENDING ;
    request.price = price;
    request.comment = "Лимитный ордер..." ;
//---    
     if (buy_sell)
    {
      request.type = ORDER_TYPE_BUY_LIMIT ;
    }
     else
    {
      request.type = ORDER_TYPE_SELL_LIMIT ;
    }  
  }  
//--- Send order
   if ( OrderSendAsync (request, result))
  {
     if ((result.retcode == TRADE_RETCODE_PLACED ) || (result.retcode == TRADE_RETCODE_DONE ))
    {
      order_id = result.request_id;
      magic_storage = main_mem_magic;
      main_state = ORD_MAIN_DO_SET;
      main_mem_time = GetMicrosecondCount ();
      main_start_time = TimeCurrent ();
      SetTransCount();
    }
     else
    {
      order_id = 0 ;
      main_mem_magic = 0 ;
      main_order_symbol = "" ;
      main_state = ORD_NO_STATE;
      main_mem_time = 0 ;
      main_start_time = 0 ;
      CheckError(result.retcode, "SetOrder: Ордер не установлен! Причина: " , MAIN_ORDER, main_order_ticket);
    }
  }
   else
  {
    order_id = 0 ;
    main_mem_magic = 0 ;
    main_order_symbol = "" ;
    main_state = ORD_NO_STATE;
    main_mem_time = 0 ;
    main_start_time = 0 ;
    CheckError(result.retcode, "SetOrder: Ордер не отправлен! Причина: " , MAIN_ORDER, main_order_ticket);
  }
}

이 코드는 3년 이상 저에게 도움이 되었습니다.

 
prostotrader :

죄송합니다. IOC 채우기와 함께 LIMIT 주문을 사용한다고 쓴 것을 눈치채지 못했을 것입니다.

이 코드는 3년 이상 저에게 도움이 되었습니다.

내가 쓴 것도 이런 이유에서다.

거래, 자동 거래 시스템 및 거래 전략 테스트에 관한 포럼

요새. 실행 질문

fxsaber , 2017.02.22 22:50

  1. 스프레드 내부의 10랏에 대해 IOC-BuyLimit를 설정한 다음 즉시 SELL 1랏을 만듭니다. 예상되는 반응은 1랏에 대해 동일한 가격(0 이익, 두 배 커미션)으로 2개의 반대 거래이고 9랏이 취소되는 것입니다.
  2. 우리는 스프레드 내부의 10랏에 대해 FOK-BuyLimit를 설정하고 즉시 SELL 1랏을 만듭니다. 예상되는 반응은 1랏에 대해 SELL이고 10랏이 취소되었습니다.

당신은 이것을 만나지 않을 것입니다. 그리고 리미터에 대한 요청에서 FOK/IOC 유형의 설정을 롤링한다는 사실이 이것이 이러한 유형임을 의미하지는 않습니다.

나는 MT5가 제한 주문을 허용하는지 상관하지 않습니다. 중요한 것은 교환에 도달하는 것입니다. 따라서 거래소에 IOC 한도가 있는 경우 단락 1과 같이 작동합니다. FOK - 항목 2. 거래소에서 이것을 찾을 수 없으므로 MT5가 요청 요청에서 무언가를 허용한다는 사실이 아니라 FOK/IOC의 본질에 대해 이야기해야 합니다. OrderGetInteger를 최소한 "IOC"-리미터로 만드십시오.
사유: