[АРХИВ!] Любой вопрос новичка, чтоб не захламлять форум. Профи, не проходите мимо. Без вас никуда - 4. - страница 190
Вы упускаете торговые возможности:
- Бесплатные приложения для трейдинга
- 8 000+ сигналов для копирования
- Экономические новости для анализа финансовых рынков
Регистрация
Вход
Вы принимаете политику сайта и условия использования
Если у вас нет учетной записи, зарегистрируйтесь
И еще вопрос.
Как сделать, что бы for (i=1; i<StartBar; i++) StartBar был бы бар, на котором был указаный изгиб (extern int b= 2)старшего таймфрейма (extern int = ... ; //W1, MN1)
Найти время бара и пересчитать его в номер бара старшего ТФ
Может код напишишь?
Как сделать, что бы for (i=1; i<StartBar; i++) StartBar был бы бар, на котором был указаный изгиб (extern int b= 2)старшего таймфрейма (extern int = ... ; //W1, MN1)
Поправка
Совпадение двух вершин указаных ТФ (допустим недельного и месячного)
Правильно так будет?
Условие тф1 >тф2
Вопрос следующего содержания. В книге по MQL4, к-я находится на MQL4.community в главе "Переменные GlobalVariables" в разделе "Свойства GV-переменных" сказано: "GV-переменная может иметь только тип double". Ниже в разделе "Функция GlobalVariableDel()" приведен пример эксперта globalvar.mq4 следующего содержания:
Вопрос: почему в данном примере GV-переменные Expert и New_Expert имеют тип int, хотя, как указано ранее, эти переменные должны были бы иметь тип double?
Заранее благодарю за ответ
Правильно так будет?
Условие тф1 >тф2
Что то не так.
В првом цикле пробую наити цену указаного изгиба на старшем ТФ.Цикл до найденого изгиба. Запускаю второй цикл на младшем ТФ, где ищу цену каждого изгиба по барам сколько их есть на графике и сравниваю с ценой найденой в первом цикле. Если нашел такую цену, то возращяю время бара даного изгиба на данном ТФ.
Запустил с 2000,01,01 на тестере.
Что в журнале
2012.06.17 10:29:39 2001.07.06 03:30 zz_date v3 EURUSD,M15: p2= 1.1688
2012.06.17 10:29:39 2001.07.06 03:30 zz_date v3 EURUSD,M15: p2= 1.2495
2012.06.17 10:29:39 2001.07.06 03:30 zz_date v3 EURUSD,M15: p2= 1.1192
2012.06.17 10:29:39 2001.07.06 03:30 zz_date v3 EURUSD,M15: p2= 1.2315
2012.06.17 10:29:39 2001.07.06 03:30 zz_date v3 EURUSD,M15: p2= 1.1069
2012.06.17 10:29:39 2001.07.06 03:30 zz_date v3 EURUSD,M15: p2= 1.3161
2012.06.17 10:29:39 2001.07.06 03:30 zz_date v3 EURUSD,M15: p2= 1.2351
2012.06.17 10:29:39 2001.07.06 03:30 zz_date v3 EURUSD,M15: p2= 1.4535
2012.06.17 10:29:39 2001.07.06 03:30 zz_date v3 EURUSD,M15: p2= 1.338
2012.06.17 10:29:39 2001.07.06 03:30 zz_date v3 EURUSD,M15: p2= 1.4249
2012.06.17 10:29:39 2001.07.06 03:30 zz_date v3 EURUSD,M15: p2= 1.3
2012.06.17 10:29:39 2001.07.06 03:30 zz_date v3 EURUSD,M15: p2= 1.416
2012.06.17 10:29:39 2001.07.06 03:30 zz_date v3 EURUSD,M15: p2= 1.2596
2012.06.17 10:29:39 2001.07.06 03:30 zz_date v3 EURUSD,M15: p2= 1.3353
2012.06.17 10:29:39 2001.07.06 03:30 zz_date v3 EURUSD,M15: p2= 1.2658
2012.06.17 10:29:39 2001.07.06 03:30 zz_date v3 EURUSD,M15: p2= 1.3138
2012.06.17 10:29:39 2001.07.06 03:30 zz_date v3 EURUSD,M15: p2= 1.0344
2012.06.17 10:29:39 2001.07.06 03:30 zz_date v3 EURUSD,M15: p2= 1.1537
2012.06.17 10:29:39 2001.07.06 03:30 zz_date v3 EURUSD,M15: p2= 1.0608
2012.06.17 10:29:39 2001.07.06 03:30 zz_date v3 EURUSD,M15: p2= 1.1216
2012.06.17 10:29:39 2001.07.06 03:30 zz_date v3 EURUSD,M15: p2= 1.079
2012.06.17 10:29:39 2001.07.06 03:30 zz_date v3 EURUSD,M15: p2= 1.2401
2012.06.17 10:29:39 2001.07.06 03:30 zz_date v3 EURUSD,M15: p2= 1.0104
2012.06.17 10:29:39 2001.07.06 03:30 zz_date v3 EURUSD,M15: p2= 1.0917
2012.06.17 10:29:39 2001.07.06 03:30 zz_date v3 EURUSD,M15: p2= 0.8227
2012.06.17 10:29:39 2001.07.06 03:30 zz_date v3 EURUSD,M15: p2= 0.9596
2012.06.17 10:29:39 2001.07.06 03:30 zz_date v3 EURUSD,M15: t1 1992.09.01 00:00
2012.06.17 10:29:39 2001.07.06 03:30 zz_date v3 EURUSD,M15: p1 1.4104
Тоже самое было в 2000 годе, то есть в начале периода тестирования.
Где ошибка. Я програмист слабый. Хочу написать тестовую програмку. Трудно получается. Кого то просить немогу, потому, что она делаеся пошагово в зависимости от полученых данных.
Помогите в этом месте. И еще на прошлой странице просил помощь в написаний функции NewZZ().
Буду благодарен, если кто исправит ошибки и обьяснит их.
Что то не так.
Помогите слабому.
Добрый день. На сайте нашел функцию трейлинга:
for(i=0; i<OrdersTotal(); i++)
{
if (OrderSelect(i,SELECT_BY_POS,MODE_TRADES)==false) continue;
if(OrderType()==OP_BUY)
{
if(Bid-OrderOpenPrice()>Point*TrailingStop_)
{
if(OrderStopLoss()<Bid-Point*TrailingStop_)
{
OrderModify(OrderTicket(),OrderOpenPrice(),Bid-Point*TrailingStop_,OrderTakeProfit(),0,Green);
return(0);
}
}
}
if(OrderType()==OP_SELL)
{
if((OrderOpenPrice()-Ask)>(Point*TrailingStop_))
{
if((OrderStopLoss()>(Ask+Point*TrailingStop_)) || (OrderStopLoss()==0))
{
OrderModify(OrderTicket(),OrderOpenPrice(),Ask+Point*TrailingStop_,OrderTakeProfit(),0,Red);
return(0);
}
}
}
}
При тестировании стратегии, после того, как откроется первый ордер, данная функция работает нормально, то есть трейлинг идет и ордер закрывается. Но после открытия вторго ордера при обращении к функции трейлинга возникает ошибка zero divide. Прошу помощи в том, что бы трейлинг работал и для второго ордера, третьего и т.д.