안녕하세요! 초보자에게 말하십시오. 어떤 식으로든 OnBookEvent 이벤트를 파악할 수 없습니다.
onTick() 에서 이 이벤트를 호출하면 모든 것이 작동합니다. onTick()이 비어 있으면 아무 것도 작동하지 않습니다. 뭔가 이해가 안가네요. OnBookEvent는 오더북에 변경이 있을 때 호출됩니다. 즉, 별도의 이벤트 핸들러입니다. 실제로 틱이 발생할 때 onTick()이 호출되는 것과 같습니다. 작동하지 않는 이유는 무엇입니까?
모든 것이 작동하는 방식입니다. 글쎄, 그것이 어떻게 작동하는지, 그것은 오더 북에 변경이있을 때가 아니라 틱이 발생할 때 "Something"을 인쇄합니다. 예를 들어 주문량이 변경된 경우 특정 가격에 Depth of Market OnBookEvent에 있는 변경 핸들러를 호출해야 하는데 그렇지 않습니다. onTick()이 비어 있으면 아무 것도 인쇄되지 않습니다.
Стандартные константы, перечисления и структуры / Структуры данных / Структура торгового запроса - справочник по языку алгоритмического/автоматического трейдинга для MetaTrader 5
ChartEvent의 이벤트를 사용자 정의 이벤트로 기본 표시기로 보내는 두 번째 표시기 신호기를 넣습니다. + 전역 변수 의 상태를 예를 들어 ms 단위의 시간으로 변경합니다.
기본 표시기에서 이 이벤트를 포착하고 계산을 시작합니다. + 전역 변수를 확인하여 그 안의 시간 ms가 계산을 시작한 시간과 같도록 합니다.
시간이 변경된 경우 새 이벤트가 발생하고 현재 계산을 중단합니다.
이 같은.
---
또는 신호기에서 각 차트 이벤트에서 ms를 gp로 변경하지만 기본적으로는 제어하기만 하면 됩니다.
일반적으로 - 두 번째 표시기가 병렬화됩니다.
이해했습니다 감사합니다. 불행히도 이 솔루션은 Expert Advisor에서만 작동합니다(계산을 중단해야 하는 경우). 이것은 표시기에서 작동하지 않습니다. 차트의 표시기에서 표시기를 호출하면 병렬 대기열이 생성되지 않지만 모든 것이 동일한 이벤트 대기열에서 끝납니다. 특정 차트가 아니라 특정 기호의 모든 차트에 대해 발생합니다.
그런 다음 이벤트에 대한 계산을 중단하면 완료되지 않습니다.
확인. 그런 다음 다른 방법을 살펴보십시오.
차트에 두 번째 지표를 배치하여 인위적으로 병렬화할 수 있습니다.
그리고 둘 다에서 GlobalVariableSetOnCondition 에 액세스합니다.
확인. 그런 다음 다른 방법을 살펴보십시오.
차트에 두 번째 지표를 배치하여 인위적으로 병렬화할 수 있습니다.
그리고 둘 다에서 GlobalVariableSetOnCondition 에 액세스합니다.
이해하지 못했습니다.
ChartEvent의 이벤트를 사용자 정의 이벤트로 기본 표시기로 보내는 두 번째 표시기 신호기를 넣습니다. + 전역 변수 의 상태를 예를 들어 ms 단위의 시간으로 변경합니다.
기본 표시기에서 이 이벤트를 포착하고 계산을 시작합니다. + 전역 변수를 확인하여 그 안의 시간 ms가 계산을 시작한 시간과 같도록 합니다.
시간이 변경된 경우 새 이벤트가 발생하고 현재 계산을 중단합니다.
이 같은.
---
또는 시그널맨에서 각 차트 이벤트에서 ms를 gp로 변경하지만 기본적으로는 제어만 하면 됩니다.
일반적으로 - 두 번째 표시기가 병렬화됩니다.
안녕하세요! 초보자에게 말하십시오. 어떤 식으로든 OnBookEvent 이벤트를 파악할 수 없습니다.
onTick() 에서 이 이벤트를 호출하면 모든 것이 작동합니다. onTick()이 비어 있으면 아무 것도 작동하지 않습니다. 뭔가 이해가 안가네요. OnBookEvent는 오더북에 변경이 있을 때 호출됩니다. 즉, 별도의 이벤트 핸들러입니다. 실제로 틱이 발생할 때 onTick()이 호출되는 것과 같습니다. 작동하지 않는 이유는 무엇입니까?
모든 것이 작동하는 방식입니다. 글쎄, 그것이 어떻게 작동하는지, 그것은 오더 북에 변경이있을 때가 아니라 틱이 발생할 때 "Something"을 인쇄합니다. 예를 들어 주문량이 변경된 경우 특정 가격에 Depth of Market OnBookEvent에 있는 변경 핸들러를 호출해야 하는데 그렇지 않습니다. onTick()이 비어 있으면 아무 것도 인쇄되지 않습니다.
int OnInit()
{
if ( !MarketBookAdd("RTS-6.16"))
{
Print( "오류",GetLastError() );
}
또 다른
{
인쇄("완료");
}
무효 OnDeinit(const int 이유)
{
MarketBookRelease("RTS-6.16");
}
무효 OnTick()
{
책 이벤트(_Symbol);
}
무효 OnBookEvent(const string &symbol)
{
MqlBookInfo 책[];
MarketBookGet("RTS-6.16", 책);
if(배열크기(책) == 0)
{
printf("시장 장부 가격을 로드하지 못했습니다. 이유: " + (string)GetLastError());
반품;
}
Print("무언가");
}
도움말 오류 https://www.mql5.com/ru/docs/constants/structures/mqltraderequest
SL & TP Modification
StopLoss 및/또는 TakeProfit 수준을 수정하기 위한 거래 주문. 4개의 필드가 필요합니다.
• 행동
• 상징
• 슬
• tp
• 위치
도움말 오류 https://www.mql5.com/ru/docs/constants/structures/mqltraderequest
필드 추가됨 위치 이지만 채워진 필드의 수는 4로 유지됩니다.Aleksey, 여기에 쓰는 것은 무의미합니다. 서비스 데스크에 신청해야합니다. 동시에 등급에 + 것입니다)
ChartEvent의 이벤트를 사용자 정의 이벤트로 기본 표시기로 보내는 두 번째 표시기 신호기를 넣습니다. + 전역 변수 의 상태를 예를 들어 ms 단위의 시간으로 변경합니다.
기본 표시기에서 이 이벤트를 포착하고 계산을 시작합니다. + 전역 변수를 확인하여 그 안의 시간 ms가 계산을 시작한 시간과 같도록 합니다.
시간이 변경된 경우 새 이벤트가 발생하고 현재 계산을 중단합니다.
이 같은.
---
또는 신호기에서 각 차트 이벤트에서 ms를 gp로 변경하지만 기본적으로는 제어하기만 하면 됩니다.
일반적으로 - 두 번째 표시기가 병렬화됩니다.
이해했습니다 감사합니다. 불행히도 이 솔루션은 Expert Advisor에서만 작동합니다(계산을 중단해야 하는 경우). 이것은 표시기에서 작동하지 않습니다. 차트의 표시기에서 표시기를 호출하면 병렬 대기열이 생성되지 않지만 모든 것이 동일한 이벤트 대기열에서 끝납니다. 특정 차트가 아니라 특정 기호의 모든 차트에 대해 발생합니다.
EX5 리소스가 아닌 MQ5 리소스 형태로 표시기를 푸시하는 방법은 무엇입니까?