Уровень стоп-лосса/тейк-профита из MarketInfo()

 

Здравствуйте! У меня такой вопрос:

Если MarketInfo(Symbol(), MODE_STOPLEVEL) показывает уровень равный 100 - значит советник не сможет поставить тейк-профит на расстоянии меньше ста? Напрмер на 80 пт от текущей цены? Или это возможно?


И еще подскажите, что-бы дополнительно тему не создавать. При написании, отладке и оптимизации эксперта - какие трудности могут возникнуть при переходе с пар, где 4 знака после точки на пары, где 5 знаков после точки?

 
KlimMalgin >>:

Здравствуйте! У меня такой вопрос:

Если MarketInfo(Symbol(), MODE_STOPLEVEL) показывает уровень равный 100 - значит советник не сможет поставить тейк-профит на расстоянии меньше ста? Напрмер на 80 пт от текущей цены? Или это возможно?


И еще подскажите, что-бы дополнительно тему не создавать. При написании, отладке и оптимизации эксперта - какие трудности могут возникнуть при переходе с пар, где 4 знака после точки на пары, где 5 знаков после точки?

1) да нельзя


2) использую абсолютные величины

преимущества - скорость - из за отсутвии лишнего преобразования - при жестко длинных и больших оптимизациях полезно

т е нет пересчета типа TP = pTP * Point


вместо этого TP = Ask + pTP ; или TP = Bid - pTP


pTP = 0.0120; // в примечании пишу что 0.0120 соответсвует 120 пунктам - причем 5 знаков или 4 неважно


при работе на 5 знаках или на 4 знаках никаких преобразований и пересчетов


 

KlimMalgin писал(а) >>

И еще подскажите, что-бы дополнительно тему не создавать. При написании, отладке и оптимизации эксперта - какие трудности могут возникнуть при переходе с пар, где 4 знака после точки на пары, где 5 знаков после точки?

трудностей не должно быть никаких. Просто введите параметр

double Pnt=1; if (Digits==3 || Digits==5) Pnt=10;


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

tp=MathMin(Ask-TP*Pnt*Point, Ask-StopLvl); // для Sell


тогд вам будет абсолютно всё равно где работает эксперт.