Как начать работу с MQL5 - страница 17

 
Ahmad861 :

Приведенный вами код не проверяет, открыт ли уже ордер, не устанавливает стоплосс и тейкпрофит.

Хорошо, вот ваш более сложный код:

Простой скрипт: открывается позиция BUY. В этом случае вы можете установить стоп-лосс и тейк-профит.

How to start with MQL5
How to start with MQL5
  • 2019.08.18
  • www.mql5.com
This thread discusses MQL5 code examples. There will be examples of how to get data from indicators, how to program advisors...
 
Я закодировал советник, и большую часть времени он работает нормально, стоплосс и тейкпрофит установлены идеально, но я заметил, что иногда советник глючит и продолжает работать на каждом тике. Например, у меня была сделка по CADJPY, я установил стоплосс на 100 пунктов и тейкпрофит на 250 пунктов, также в советнике был закодирован отчет о печати, советник открывал сделку и устанавливал стоплосс на тик выше и тейкпрофит на тик ниже при продаже или наоборот при покупке и каждый раз сбивал стоплосс, Менее чем за 30 секунд я спустил половину средств на демо-счете, и консоль печатала каждый тик, это не проблема с парами JPY, та же проблема возникала и с другими парами, есть ли какие-нибудь решения?
Basic Principles - Trading Operations - MetaTrader 5 Help
Basic Principles - Trading Operations - MetaTrader 5 Help
  • www.metatrader5.com
Before you proceed to study the trade functions of the platform, you must have a clear understanding of the basic terms: order, deal and position...
 
Ahmad861 :
Я закодировал советник и большую часть времени он работает нормально, стоплосс и тейкпрофит установлены идеально, но я заметил, что иногда советник глючит и продолжает работать на каждом тике. Например, у меня была сделка по CADJPY и я установил стоплосс на 100 пунктов и тейкпрофит на 250 пунктов, я также закодировал печать в советнике, советник открывал сделку и устанавливал стоплосс на тик выше и тейкпрофит на тик ниже на продажу или наоборот на покупку и консоль печатала каждый тик, это не проблема с парами JPY и такая же проблема возникала с другими парами, есть ли какое-нибудь решение?

Необходимо строго контролировать цепочку: сигнал - торговый ордер - исполнение торгового ордера.

Я приводил пример в

OnTradeTransaction отслеживаем ситуацию, когда позиция появляется точно по нашему сигналу.


 
Ahmad861 :

Могу ли я отправить вам свой код личным сообщением и не могли бы вы сказать мне, что с ним не так?

Не.

 
Ahmad861 :

Это мой код, исключая логику, я знаю, что он очень убогий, но мне нужна помощь, чтобы выяснить, что не так с ним, так как я все еще новичок в программировании

Ваш код не компилируется. Ваш код содержит огромное количество ошибок.


И еще одна - вы совершаете САМУЮ БОЛЬШУЮ ОШИБКУ: вы создаете хэндл индикатора НА КАЖДЫЙ ТИК! Запомните: в MQL5 хэндл индикатора ДОЛЖЕН СОЗДАВАТЬСЯ ОДИН РАЗ!!! И делать это нужно в OnInit () !!!

 
Vladimir Karputov:

Ваш код не компилируется. Ваш код содержит огромное количество ошибок.

В том-то и дело, что он компилируется нормально, единственная ошибка, которую я получаю, это проверка OrderSend, поэтому я не понимаю, что я делаю неправильно, если бы вы могли подсказать мне, как я могу это исправить, спасибо.

 
Ahmad861:

В том-то и дело, что он компилируется нормально, единственная ошибка, которую я получаю, это проверка OrderSend, поэтому я не понимаю, что я делаю не так, если бы вы могли подсказать мне, как я могу это исправить, спасибо.

КАЖДЫЙ ТИК! Запомните: в MQL5 хэндл индикатора ДОЛЖЕН СОЗДАВАТЬСЯ ОДИН РАЗ!!! И делать это нужно в OnInit () !!!

 
How to start with MQL5
How to start with MQL5
  • 2020.09.17
  • www.mql5.com
This thread discusses MQL5 code examples. There will be examples of how to get data from indicators, how to program advisors...
 

Спасибо большое, а все остальное в коде в порядке?

 
Vladimir Karputov:

Я использую несколько символов и таймфреймов через циклы, объявление хэндлов в OnInit не будет работать без циклов