mql5 언어의 특징, 미묘함 및 작업 방법 - 페이지 10

 
알렉세이 볼찬스키 :
헤지 마진은 어떻게 계산할 수 있습니까?
Symbol -functions를 통해 모든 것을 계산할 수 있다고 생각합니다.
 
fxsaber :
팁 고마워! 야생에서 이것은 SymbolInfoMarginRate입니다. 그래서 지금은
// Размер свободных средств, необходимых для открытия 1 лота на покупку
double GetMarginRequired( const string Symb )
{
}

MT5에서는 다른 방향에서 완전히 다른 마진 요구 사항이 있을 수 있음을 분명히 이해해야 합니다. 저것들. 단일 MT4 옵션은 롤링되지 않을 수 있습니다. Forex는 물론 이런 일이 발생하지 않습니다. 하지만 기억해야 합니다. 따라서 일반적으로 다음과 같이 작성해야 합니다.
// Альтернатива OrderCalcMargin
bool MyOrderCalcMargin(  const ENUM_ORDER_TYPE action, const string symbol, const double volume, const double price, double &margin )
{
}

매우 감사합니다! 이제 모든 곳에서 문제 없이 작동합니다.

흥미롭게도 " MyOrderCalcMargin " 기능은 여전히 거래 중이며, 그렇다면 적어도 테스터에서 거래하는 방법)

 
fxsaber :
Symbol-functions를 통해 모든 것을 계산할 수 있다고 생각합니다.
불행히도 Symbol-functions는 비뚤어지게 작동합니다.

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

오류, 버그, 질문

fxsaber , 2017.02.28 10:48

Metaquotes-데모, USD 계정, RTS-3.17.

TickValue는 계정 통화(USD)가 아닌 루블로 잘못된 값을 제공합니다.

FxPro-ECN. GOLD 및 GOLDEURO 기호는 동일한 TickValue를 갖습니다. 그러나 EURUSD 시간이 달라야 함은 분명합니다.

 
fxsaber :

FIBOGroup-MT5 서버의 재미있는 MT5 SGDJPY

이 상황에서 MyOrderCalcMargin은 올바르게 계산하지만 표준 OrderCalcMargin은 계산하지 않습니다!


일반 기능은 상품 설정에 지정된 계약 사양에 따라 계산합니다. 증거금 통화 NOK와 함께 각각 1000NOK가 한 로트에 적용됩니다.

분명히 SGDJPY 통화 쌍의 이름을 나누는 것으로 간주합니다. 한 랏에 1000 SGD가 사용됩니다.

따라서 문제는 중개인 측의 잘못된 계약 명세에 있다. 해당 서버의 브로커에게 문의하십시오.

 
fxsaber :

저것들. 모든 OrderSend를 거래 환경과 동기화하고 함정을 피하려면 주어진 소스를 mqh 파일로 정렬하고 프로그램에 적절한 #include를 만드는 것으로 충분합니다.

탬버린으로 춤을 마칠 수 있습니다.

SD는 다음 빌드에서 OrderSend() 가 정상적으로 작동할 것이라고 응답했습니다. :)

 
MQ 알렉산더 :

일반 기능은 상품 설정에 지정된 계약 사양에 따라 고려합니다. 증거금 통화 NOK로 각각 1로트에 대해 1000NOK 가 사용됩니다.

분명히 SGDJPY 통화 쌍의 이름을 나누는 것으로 간주합니다. 한 랏에 1000 SGD가 사용됩니다.

따라서 문제는 중개인 측의 잘못된 계약 명세에 있다. 해당 서버의 브로커에게 문의하십시오.

MT5에는 모든 통화를 계정 통화로 변환할 수 있는 내부 숨겨진 메커니즘이 있습니다. 이 경우 OrderCalcMargin 1000 NOK는 해당 금액의 USD로 환산하여 발행합니다.

이 메커니즘을 열어 주세요. 예를 들어,

double CurrencyExchange( const string Currency ); // возвращает курс валюты Currency к валюте счета

이 환율은 OrderCalcMargin이 계산하기 때문에 터미널에서 100% 사용할 수 있습니다. 그들의 작업은 FORTS 기호를 사용할 때 MetaQuotes-Demo USD 계정에서 특히 두드러집니다. RUR에 마진 통화가 있습니다.

TickValue 기능/버그로 인해 특히 그렇습니다.

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

오류, 버그, 질문

fxsaber , 2017.02.28 10:48

Metaquotes-데모, USD 계정, RTS-3.17.

TickValue는 계정 통화(USD)가 아닌 루블로 잘못된 값을 제공합니다.

FxPro-ECN. GOLD 및 GOLDEURO 기호는 동일한 TickValue를 갖습니다. 그러나 EURUSD 시간이 달라야 함은 분명합니다.

 
안녕하세요! 문서 읽기:
OrdersTotal

Возвращает количество действующих ордеров.

int    OrdersTotal ();

Возвращаемое значение

Значение типа int .

Примечание

Не следует путать между собой действующие отложенные ордера и позиции, которые также отображаются на вкладке "Торговля" в панели "Инструменты" . Ордер – это распоряжение на проведение торговой операции, а позиция является результатом одной или нескольких сделок.

При "неттинговом" учете позиций ( ACCOUNT_MARGIN_MODE_RETAIL_NETTING и ACCOUNT_MARGIN_MODE_EXCHANGE ) по каждому символу в любой момент времени может быть открыта только одна позиция, которая является результатом одной или более сделок. Не следует путать между собой позиции и действующие отложенные ордера, которые также отображаются на вкладке "Торговля" в панели "Инструменты" .

При независимом представлении позиций ( ACCOUNT_MARGIN_MODE_RETAIL_HEDGING ) по каждому символу одновременно может быть открыто несколько позиций.

Смотри также

OrderSelect (), OrderGetTicket (), Свойства ордеров
" 활성 주문 "이라는 용어의 사본은 어디에서 찾을 수 있습니까?
" 활성 보류 주문 " 및 활성 보류 주문 이 아닌 것은 무엇입니까?
 
레오59 :
안녕하세요! 문서 읽기:
OrdersTotal

Возвращает количество действующих ордеров.

int    OrdersTotal ();

Возвращаемое значение

Значение типа int .

Примечание

Не следует путать между собой действующие отложенные ордера и позиции, которые также отображаются на вкладке "Торговля" в панели "Инструменты" . Ордер – это распоряжение на проведение торговой операции, а позиция является результатом одной или нескольких сделок.

При "неттинговом" учете позиций ( ACCOUNT_MARGIN_MODE_RETAIL_NETTING и ACCOUNT_MARGIN_MODE_EXCHANGE ) по каждому символу в любой момент времени может быть открыта только одна позиция, которая является результатом одной или более сделок. Не следует путать между собой позиции и действующие отложенные ордера, которые также отображаются на вкладке "Торговля" в панели "Инструменты" .

При независимом представлении позиций ( ACCOUNT_MARGIN_MODE_RETAIL_HEDGING ) по каждому символу одновременно может быть открыто несколько позиций.

Смотри также

OrderSelect (), OrderGetTicket (), Свойства ордеров
" 활성 주문 "이라는 용어의 사본은 어디에서 찾을 수 있습니까?
" 활성 보류 주문 " 및 활성 보류 주문 이 아닌 것은 무엇입니까?

보류 중인 주문 - Buystop, Sellstop, buylimit 및 buystop.

포지션 - 매수 및 매도.

비활성 - 삭제된 주문 및 마감된 위치.

 
비탈리 무지첸코 :

보류 중인 주문 - Buystop, Sellstop, buylimit 및 buystop.

포지션 - 매수 및 매도.

비활성 - 삭제된 주문 및 마감된 위치.

고맙습니다!
"주문은 거래 를 수행하는 주문"이므로 보류 중인 주문만 "활성 주문"으로 분류될 수 있으며 "포지션 - 매수 및 매도"는 거래를 수행하라는 지시가 아닙니다. 아니면 내가 뭔가를 놓치고 있습니까?
 
활성 주문은 TP/SL 및 MarginCall 주문을 제외하고 실행 또는 취소가 보류 중인 거래 주문 입니다. 유효한 주문은 BUY 및 SELL일 수 있습니다.
사유: