CTrade.Buy() возвращает unknown retcode [0]

 

#include <Trade\Trade.mqh>

CTrade Trade    = new CTrade();

int OnInit()
{
  return(INIT_SUCCEEDED);
}

int OnCalculate(
    const int      rates_total, 
    const int      prev_calculated, 
    const datetime &time[], 
    const double   &open[], 
    const double   &high[], 
    const double   &low[], 
    const double   &close[], 
    const long     &tick_volume[], 
    const long     &volume[], 
    const int      &spread[])
{
  Trade.Buy (1, _Symbol, 64575.00, 64300.00, 65000.00, "тест");
  return prev_calculated;  
};


Друзья,помогите разобраться!

При вызове CTrade.Buy() возвращается значение false, ошибка: unknown retcode [0], структура result имеет пустые значения (вверху модель для примера).

Счет тестовый, брокер "открытие".

Что я делаю не так?

 
HungryGoblin:


Друзья,помогите разобраться!

При вызове CTrade.Buy() возвращается значение false, ошибка: unknown retcode [0], структура result имеет пустые значения (вверху модель для примера).

Счет тестовый, брокер "открытие".

Что я делаю не так?

Индикатор - для отображения данных.

Советник - для торговли.

 
HungryGoblin:


Друзья,помогите разобраться!

При вызове CTrade.Buy() возвращается значение false, ошибка: unknown retcode [0], структура result имеет пустые значения (вверху модель для примера).

Счет тестовый, брокер "открытие".

Что я делаю не так?

Из индикатора нельзя торговать.

Есть раздел "Биржевой трейдинг", там есть

тема "В помощь начинающим", Вам туда

 
Vladimir Karputov:

Индикатор - для отображения данных.

Советник - для торговли.

Ага, еще давно столкнулся с тем, что в индикаторе даже нельзя получить некоторые данные, относящиеся к торговле. Разрабы тогда ответили, что индикаторы для этого не предназначены.

 
Vladimir Karputov:

Индикатор - для отображения данных.

Советник - для торговли.

Владимир, я тоже пришел к такому выводу. Но дело в том, что при создании файла я выбирал EXPERT, а не INDICATOR.

Как по коду понять, где советник, а где индикатор?

 
HungryGoblin:

Владимир, я тоже пришел к такому выводу. Но дело в том, что при создании файла я выбирал EXPERT, а не INDICATOR.

Как по коду понять, где советник, а где индикатор?

Тот огрызок кода который ВЫ показали НИКАК НЕ МОГ СГЕНЕРИРОВАТЬ Мастер MQL5.

Даже не представляю в чём Вы там пытались создать советник.


Всегда лучше делать заготовку так: Создание готового советника - Мастер MQL4/MQL5.


Попробуйте создать в Мастере MQL5 советник и индикатор (поочерёдно конечно). Сравните два получившихся файла, сравните какие функции присутствуют там и там ...

Создание готового советника - Мастер MQL4/MQL5 - MetaTrader 5
Создание готового советника - Мастер MQL4/MQL5 - MetaTrader 5
  • www.metatrader5.com
Мастер MQL4/MQL5 позволяет создавать полностью работоспособных советников на основе стандартной библиотеки, поставляемой вместе с торговой платформой. Для этого выберите пункт "Советник (сгенерировать)" на первой странице Мастера MQL4/MQL5. Общие параметры — название советника, это же имя будет присвоено и файлу эксперта. Здесь также можно...
 
HungryGoblin:

Владимир, я тоже пришел к такому выводу. Но дело в том, что при создании файла я выбирал EXPERT, а не INDICATOR.

Как по коду понять, где советник, а где индикатор?

Функция OnCalculate может быть только в индикаторе.

Причина обращения: