[АРХИВ]Любой вопрос новичка, чтоб не захламлять форум. Профи, не проходите мимо. Без вас никуда - 5. - страница 124
Вы упускаете торговые возможности:
- Бесплатные приложения для трейдинга
- 8 000+ сигналов для копирования
- Экономические новости для анализа финансовых рынков
Регистрация
Вход
Вы принимаете политику сайта и условия использования
Если у вас нет учетной записи, зарегистрируйтесь
Добрый день,
Подскажите плз, как поставит метку на графике. Например, ордер не открылся, но хотя бы видеть на графике, в какой точке он должен был открыться.
Спасибо.
Как-то так
Да извините запутался, первый раз писал на форум. Сначала копипастел, затем решил ручками и запутался... но в примере выше все верно..
MA1>MA2 и МА1<MA3 и МА3<МА4
Ознакомьтесь со следующей веткой
Что-то тут странно
MA1>MA2 и MA2>MA3 и тут же MA1<MA3
Тем более что достаточно
Вопрос такой. Я уже не первый раз встречаю такую ситуацию:
Если на каждом тике вызывать функцию траала или, например, безубытка, то выскакивает ошибка - 1. Что означает согласно документации:
ERR_NO_RESULT 1 Нет ошибки, но результат неизвестен
Если вызывать не открыто в функции старт, то есть не просто вписал функцию с параметрами прямо в start, а вызывать её на каждом баре, т.е. не потиково, то ошибки - нет...
Я имею ввиду так:
Почему так?
И вообще как грамотнее это реализуется? На каждом тике будет накладно по ресурсам?
Всем добрый день.
Нужна ваша помощь. Не пойму в чём дело
if (OrderStopLoss() != NormalizeDouble(t6,5))
{
a=10;
}
То, что OrderStopLoss()= 1.3017 и NormalizeDouble(t6,5)=1.3017 условие всё равно выполняется, то есть a=10. А оно не должно выполняться.
В чём может быть причина?
Вопрос такой. Я уже не первый раз встречаю такую ситуацию:
Если на каждом тике вызывать функцию траала или, например, безубытка, то выскакивает ошибка - 1. Что означает согласно документации:
Если вызывать не открыто в функции старт, то есть не просто вписал функцию с параметрами прямо в start, а вызывать её на каждом баре, т.е. не потиково, то ошибки - нет...
Я имею ввиду так:
Почему так?
И вообще как грамотнее это реализуется? На каждом тике будет накладно по ресурсам?
Вопрос такой. Я уже не первый раз встречаю такую ситуацию:
Если на каждом тике вызывать функцию траала или, например, безубытка, то выскакивает ошибка - 1. Что означает согласно документации:
Если вызывать не открыто в функции старт, то есть не просто вписал функцию с параметрами прямо в start, а вызывать её на каждом баре, т.е. не потиково, то ошибки - нет...
Я имею ввиду так:
Почему так?
И вообще как грамотнее это реализуется? На каждом тике будет накладно по ресурсам?
Трал пытается переставить СЛ на тот же уровень. Нужно добавить проверку, уровень трала должен отличатся от текущего СЛ.
Трал пытается переставить СЛ на тот же уровень. Нужно добавить проверку, уровень трала должен отличатся от текущего СЛ.
Если стоп - новый стоп (в б.у.) не равен ноль... то модифицируем... Если нет, то не модифицируем. Поэтому мне и не понятно как так происходит. Ведь я понимаю, что нужна проверка на равенство прошлого и нового стопа и я её сделал.Так у меня ж есть проверка на этот случай:
Здравствуйте ! подскажите пожалуйста . как можно модифицировать начальный и последний ордер под 1 T/P спасибо
gi_304 = CountTrades();
g_price_212 = 0;
double ld_24 = 0;
for (g_pos_300 = OrdersTotal() - 1; g_pos_300 >= 0; g_pos_300--) {
OrderSelect(g_pos_300, SELECT_BY_POS, MODE_TRADES);
if (OrderSymbol() != Symbol() || OrderMagicNumber() != g_magic_176) continue;
if (OrderSymbol() == Symbol() && OrderMagicNumber() == g_magic_176) {
if (OrderType() == OP_BUY || OrderType() == OP_SELL) {
g_price_212 += OrderOpenPrice() * OrderLots();
ld_24 += OrderLots();
}
}
}
if (gi_304 > 0) g_price_212 = NormalizeDouble(g_price_212 / ld_24, Digits);
if (gi_332) {
for (g_pos_300 = OrdersTotal() - 1; g_pos_300 >= 0; g_pos_300--) {
OrderSelect(g_pos_300, SELECT_BY_POS, MODE_TRADES);
if (OrderSymbol() != Symbol() || OrderMagicNumber() != g_magic_176) continue;
if (OrderSymbol() == Symbol() && OrderMagicNumber() == g_magic_176) {
if (OrderType() == OP_BUY) {
g_price_180 = g_price_212 + TakeProfit2 * Point;
gd_unused_196 = g_price_180;
gd_308 = g_price_212 - Stoploss * Point;
gi_268 = TRUE;
}
}
if (OrderSymbol() == Symbol() && OrderMagicNumber() == g_magic_176) {
if (OrderType() == OP_SELL) {
g_price_180 = g_price_212 - TakeProfit2 * Point;
gd_unused_204 = g_price_180;
gd_308 = g_price_212 + Stoploss * Point;
gi_268 = TRUE;
}
}
}
}
if (gi_332) {
if (gi_268 == TRUE) {
for (g_pos_300 = OrdersTotal() - 1; g_pos_300 >= 0; g_pos_300--) {
OrderSelect(g_pos_300, SELECT_BY_POS, MODE_TRADES);
if (OrderSymbol() != Symbol() || OrderMagicNumber() != g_magic_176) continue;
if (OrderSymbol() == Symbol() && OrderMagicNumber() == g_magic_176) OrderModify(OrderTicket(), g_price_212, OrderStopLoss(), g_price_180, 0, Yellow);
gi_332 = FALSE;
}
}
}
return (0);
Здравствуйте ! подскажите пожалуйста . как можно модифицировать начальный и последний ордер под 1 T/P спасибо
Отредактируйте этот код, что бы не походил на взломанный