Скачать MetaTrader 5

плавающий спред

Авторизуйтесь или зарегистрируйтесь, чтобы добавить комментарий
Nahum Rozental
73
Nahum Rozental 2009.10.01 07:48 
Добрый всем день.Какая разница должна быть в коде для работы с плавающим спредом?Спасибо.
Rid
3170
Rid 2009.10.01 08:15  
Странный вопрос.
Nahum Rozental
73
Nahum Rozental 2009.10.01 08:23  
rid писал(а) >>
Странный вопрос.

Советник работает отлично на постоянном спреде,а на плавающип показывает ошибку 0.

Rid
3170
Rid 2009.10.01 08:35  

Посмотрите, размерность котировок. Обычно на пост. спреде 4-х значные котировки.

А при плавающем - 5 значные.

Т.е. при 5-знач. надо умножать на 10 все стопы, тралы и проч. параметры привязанные к пунктам..

Maxim
146
Maxim 2009.10.01 08:36  
Просто каждый раз перед совершением торговой операции надо его смотреть MarketInfo(Symbol(), MODE_SPREAD), а не однократно как я полагаю у Вас написано (в init`е или т.п.).
Максим
282
Максим 2009.10.01 08:39  
Странная у вас ошибка, проверка на номер ошибки стоит в советнике, т.е. что-то типа if (GetLastError()!=0) вывести ошибку
ERR_NO_ERROR 0 Торговая операция прошла успешно.

Вот по идее код вашей ошибки, хотя это и не ошибка вовсе, а просто вывод результата запроса GetLastError(), но в таком случае она должна выводится при любом спреде, либо где-то перед выводом в журнал ошибки стоит обнуление последней запрошеной ошибки, но тут опять же должно все выводится независимо от спреда.
Вобще надо видеть блок обработки ошибок торговых операций вашего советника, что-бы что-то определенное можно было сказать.
Nahum Rozental
73
Nahum Rozental 2009.10.01 08:45  
rid писал(а) >>

Посмотрите, размерность котировок. Обычно на пост. спреде 4-х значные котировки.

А при плавающем - 5 значные.

Т.е. при 5-знач. надо умножать на 10 все стопы, тралы и проч. параметры привязанные к пунктам..

http://www.pfgbest.ru/ - это фирма,знаков 4.

kombat
3276
kombat 2009.10.01 08:46  

Вместо MarketInfo(Symbol(), MODE_SPREAD)

использовать аск-бид=спред

вот так:

int spr;
spr=MarketInfo(Symbol(),MODE_ASK)-MarketInfo(Symbol(),MODE_BID))/MarketInfo(Symbol(),MODE_POINT);

а впрочем, проверил, это видимо настройки сервера,

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

(4-х знак)

Nahum Rozental
73
Nahum Rozental 2009.10.01 09:01  
kombat писал(а) >>

Вместо MarketInfo(Symbol(), MODE_SPREAD)

использовать аск-бид=спред

вот так:

а впрочем, проверил, это видимо настройки сервера,

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

(4-х знак)

Спасибо всем, разобрался.

Максим
413
Максим 2010.12.14 19:53  
kombat:

Вместо MarketInfo(Symbol(), MODE_SPREAD)

использовать аск-бид=спред

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