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

 
abeiks :

여기에서 몇 가지 답변을 찾을 수 있습니다. https://www.mql5.com/ru/forum/131859


1. 감사하지만 답을 찾지 못했습니다. SetOrder() 함수가 있지만 본질적으로 OrderSend()와 동일합니다. 이 기능으로 동시에 여러 주문을 열 수 없습니다.
 
smart_man :
1. 감사하지만 답을 찾지 못했습니다. SetOrder() 함수가 있지만 본질적으로 OrderSend()와 동일합니다. 이 기능으로 동시에 여러 주문을 열 수 없습니다.

어떤 기능으로도 동시에 여러 주문을 여는 것은 불가능합니다. 원칙적으로 서버가 주문을 병렬이 아닌 차례로 실행하고 귀하뿐만 아니라 모든 클라이언트의 주문이 대기열에 있기 때문에 원칙적으로 수행할 수 없습니다. .

가장 좋은 경우는 몇 밀리초의 차이로 주문이 연이어 열리겠지만, 이것은 시장에 수요가 있는 경우입니다.

 
evillive :

어떤 기능으로도 동시에 여러 주문을 여는 것은 불가능합니다. 원칙적으로 서버가 주문을 병렬이 아닌 차례로 실행하고 귀하뿐만 아니라 모든 클라이언트의 주문이 대기열에 있기 때문에 원칙적으로 수행할 수 없습니다. .

가장 좋은 경우는 몇 밀리초의 차이로 주문이 연이어 열리겠지만, 이것은 시장에 수요가 있는 경우입니다.

여기에서 문제의 본질을 이해하고 있음이 분명합니다! 보류 중인 방식으로 이 주문을 열면 한 가지만 떠올랐습니다. 그렇다면 동시에 열 수 있습니까?
 
smart_man :
여기에서 문제의 본질을 이해하고 있음이 분명합니다! 보류 중인 방식으로 이 주문을 열면 한 가지만 떠올랐습니다. 그렇다면 동시에 열 수 있습니까?
아니요, 서버는 지연되거나 시장에서 여전히 하나씩 실행합니다.
 
evillive :
아니요, 서버는 지연되거나 시장에서 여전히 하나씩 실행합니다.

1. 그런 다음 "동시성"의 문제가 제거됩니다. 그렇다면 이 측면에서 시장을 여는 것과 보류 중인 것 사이에는 차이가 없습니다.

2. 이 마감 순간을 포착하기 위해 매 틱마다 주문이 마감되었는지 수동으로 모니터링하는 것이 맞습니까(TP 또는 SL로) 아니면 이미 만들어진 기능이 있습니까?

 
smart_man :

1. 그런 다음 "동시성"의 문제가 제거됩니다. 그렇다면 이 측면에서 시장을 여는 것과 보류 중인 것 사이에는 차이가 없습니다.

2. 이 마감 순간을 포착하기 위해 매 틱마다 주문이 마감되었는지 수동으로 모니터링하는 것이 맞습니까(TP 또는 SL로) 아니면 이미 만들어진 기능이 있습니까?

2. 잘 보세요: https://www.mql5.com/ru/forum/131859

isCloseLastPosByStop();
isCloseLastPosByTake();
 
이 줄은 무엇을 의미합니까: PostMessageA(hwnd, WM_COMMAND, 0x822c, 0)? 어떻게 목적지를 찾을 수 없습니다.
[Deleted]  

어떤 DC를 선택해야 하는지 알려주시겠습니까? 자금 입금/출금과 관련된 문제와 견적의 신뢰성에 모두 관심이 있습니다. 예를 들어 , alpari 서버의 테스트 결과 는 후자를 선호하는 메타따옴표와 매우 다릅니다. 다른 서버의 양초 매개 변수는 다른 값 등을 갖습니다.

흥미롭게도 Alpari와 Forex 클럽은 지난 주에 라이센스가 발급되지 않았고 검색은 teletrade에서 수행되었습니다. 어떻게 계속 살 것인가?

[Deleted]  

안녕하세요. 완전히 독립형 사용자 정의 함수를 만들고 싶습니다. OnInit()를 내보내는 데 문제가 없습니다. 사용자 정의 함수 자체는 정의에 의해 실행됩니다. 그러나 pseudoOnDeinit(const int reason) 문제가 있습니다.

나는 그 문제를 명확히 한다. 마지막 패스에서 사용자 정의 함수 자체가 그래픽 개체를 삭제하고 예를 들어 터미널의 전역 변수에 일부 데이터를 저장해야 합니다.

루프 프로그램에서 프로그램 종료 표시기는 IsStopped()==true일 수 있습니다. 비루프에서는 항상=0입니다. 일반적인 방법이 아닙니다.

OnTick()에서 UninitializeReason() 함수를 호출하려고 했습니다. 결과는 항상 = 0이지만 마지막 패스에서 다가오는 초기화 해제에 대한 이유 값을 제공하도록 하는 것이 논리적일 수 있습니다.

UninitializeReason() 함수가 잘려서 OnDeinit(const int reason) 내에서만 사용할 수 있음이 밝혀졌습니다.

초기화 해제 함수 OnDeinit(const int reason)에 모든 사용자 함수를 추가로 등록하고 초기화 해제 이유를 사용자 함수에 전달되는 필수 매개변수 중 하나로 만들 수 있습니다.

OnDeinit(const int reason)에서 사용자 정의 함수로 전달된 0이 아닌 값의 존재는 주 프로그램이 종료되었다는 신호입니다.

아마도 이 목적을 위해 필요한 다른 방법과 시스템 변수가 있을 것입니다. 쓰다. 경험을 공유하세요. 미안하지 않다면. ;-)

 
kosmos0975 :

OnTick()에서 UninitializeReason() 함수를 호출하려고 했습니다. 결과는 항상 = 0이지만 마지막 패스에서 다가오는 초기화 해제에 대한 이유 값을 제공하도록 하는 것이 논리적일 수 있습니다.

그렇지 않으면 어떻게 될 수 있습니까? 틱 사이에 터미널을 닫으면 OnTick()이 실행되지 않으므로 UninitializeReason() 함수를 호출하는 이벤트가 처리되지 않습니다.