[open source] [Советник] Milky Way EA 3.24

От Silentspec, 15 июля, 2014 в Лаборатория ProfitFX

#76


Поставил, благодарю! Инфопанель не открывает на некоторых графиках, вернее отображается на еврдол, долфра, на остальных нет, нормально это? Робофорекс цент-про.


В настройках включите UsePanel
#77


Доброго времени суток! Вчера поставил советника на демо счет в Альпари, но информационная таблица появилась только на франке и евро. Сегодня выставлялись ордера по франку, после удалились, а по ене появился сигнал, но ордера выставлены не были. В журнале ошибок нет, перезагрузка терминала не помогла. Подскажите как запустить советника на всех рекомендуемых парах?



В настройках нужно поставить "UsePanel-true"
#78

Сегодня открылся по канадцу, стоп не выставил после активации отложек. В журнале пусто, только сообщение о выставлении и открытии ордера :-?

Спойлер

c35468313c972405ec616aa6bfe21fab jpeg

#79


Сегодня открылся по канадцу, стоп не выставил после активации отложек. В журнале пусто, только сообщение о выставлении и открытии ордера :-?

Спойлер

c35468313c972405ec616aa6bfe21fab jpeg



Присоединяюсь к вопросу. И еще, можно для тех, кто в танке разъяснить, как он считает размер лота для позиции. Можно просто формулу привести в зависимости от настроек.
Спасибо!
#80

Чувак у меня тоже вчера открылcя по usdcad лотом 1.55, у меня не такой баланс чтоб так в рынок влетать :d

#81

Алпари нано демо счет за последних 3 дня вообще не одной сделки . Что не так ?

#82


Алпари нано демо счет за последних 3 дня вообще не одной сделки . Что не так ?


Ну вообще, он в принципе редко торгует. Сделка в неделю где-то. За последнюю неделю была лишь одна сделка по канадцу.
А он у Вас отложенные ордера выставлял хотя-бы?
#83

нет просто тишина . Читал выше что были сделки.

#85
Silentspec, при каком GMT были сделаны бэктесты?
#87

Начал открывать сделки по UsdJPY но почему то по две за раз одинаковых с разницей в пару секунд

200.doc49 скач.

#88

Интересная штука, до открытия совом сделок по USDJPY по паре руками открыл свою. Так он ее мало в безубыток перевел, так еще и тралит :)

#89

Если у меня брокер на 4 знака,нужно убирать 0 в настройках, касающихся пунктов в сэт файлах??? например трейлинг стоп 150 ??

Изменено 5 декабря, 2014 пользователем МСН

#90

Подскажите пож-та какой ММ использовать для каждой из 6ти валютной пары при депо 10000cent?

#91

Тестирую на тиках 99% на альпари - странно, но не один тест не дал положительный результат за 4 года. Кроме того, не получается разобраться с функцией мартина - как не меняю - выставляет ордера одинаково по мне неведомой системе. Подскажите, с чем может быть связана проблема?

#92

Что-то я туплю! Если у меня альпари стандарт, 300 баксов, но минимальный лот для торговли у меня 0.01 то мне какие из сетов использовать?

Изменено 10 декабря, 2014 пользователем rextonprofit

#93
zlodey, а выложить несколько стэйтментов и журналов тестов с ошибкам слабо?!
Чтобы разработчику были видны и настройки - и результаты тестов со всем выставлявшимися ордерами и какие сообщения и действия бот выдавал по ходу теста.

Вы пытаетесь нам рассказать о якобы каких-то ошибках на пальцах - причем и руки вы засунули в карманы.
Это типа как конкурс такой - угадай название песни по мимике, когда я отвернусь, да?!
#94
Цитата

Советник выставляет сразу два отложенных стоповых ордера. Стоп лосс не ставится. После активации отложек выставляется стоп лосс. Ищется локальный минимум на истории HistorySL свечей назад и учитывается отступ Otstup.



Если не выставляет? открыты сделки по usd/jpy без стопа , сыкотно однако :), что делать? самому выставлять?
#95

У меня есть вопросы по коду, может он уже не актуален. Брал исходник из первого поста.
[list type=decimal]

  • Считаются лишние ордера:
    Спойлер



    int OrdExist(int direction)
    {
    int OrdCount = 0;
    if (OrdersTotal() > 0) {
    for(int i = 0; i if (!OrderSelect(i, SELECT_BY_POS, MODE_TRADES)) break;
    if (OrderMagicNumber() != Magic || OrderSymbol() != Symbol()) continue;
    if (OrderType() == direction) OrdCount++;
    if (direction == -100 && (OrderType() == OP_SELL || OrderType() == OP_SELLLIMIT || OrderType() == OP_SELLSTOP)) OrdCount++;
    if (direction == 100 && (OrderType() == OP_BUY || OrderType() == OP_BUYLIMIT || OrderType() == OP_BUYSTOP)) OrdCount++;
    }
    }
    return (OrdCount);
    }



  • Зачем трогать чужие ордера:
    Спойлер



    bool MaxRisk()
    {
    double TekRisk = 0;
    if(OrdersTotal() > 0) {
    for(int i = 0; i if (!OrderSelect(i, SELECT_BY_POS, MODE_TRADES)) break;
    if (OrderMagicNumber() != Magic || OrderSymbol() != Symbol()) {
    if (OrderType() == OP_SELL && OrderOpenPrice() TekRisk = TekRisk + ((OrderStopLoss() - OrderOpenPrice()) * OrderLots() / AccountBalance()) * 100;
    }
    if (OrderType() == OP_BUY && OrderOpenPrice() > OrderStopLoss()) {
    TekRisk = TekRisk + ((OrderOpenPrice() - OrderStopLoss()) * OrderLots() / AccountBalance()) * 100;
    }
    }
    }
    }
    if(TekRisk >= MaxRisk) {
    EAComment ("Достигнут максимальный уровень риска!");
    return(true);
    }
    return(false);
    }



  • Изменено 4 марта, 2015 пользователем Rabblerouser

    #96

    Какой ММ лучше выбрать? 0,01 лот на 500 долларов или процент от депозита? У кого какой опыт?)

    #97

    Попытался на выходных пооптить по паре EURJPY на периоде 2000-2015 (2000-2009 - бэктест, 2010-2015 - форвард).
    Результаты неоднозначные.
    С одной стороны достаточно легко добиться хороших показателей (достаточное количество сделок (более 200-400 за 14 лет),профит-фактор больше двух, хорошее соотношение просадки и прибыли, визуально гладкая кривая доходности). При этом для ряда хороших сетов показатели на форварде были даже лучше (иногда существенно), чем на бэктесте.
    С другой стороны на всех хороших сетах очень сильный перекос в сторону длинных сделок (количество коротких тестер режет с помощью увеличения значения RSIhigh).
    При симметричных условиях на лонг и шорт по RSI получается очень сильный перекос по количеству сделок в шорт (соответственно, резко падают показатели).
    Получить сколь-нибудь приличный сет с достаточным количеством сделок в шорт не удалось (даже пытался оптить сеты с условием "только шорт").
    Выводы:
    Либо в советнике есть ошибка, либо пара EURJPY настолько несимметрична, причем одинаково несимметрична на всем промежутке с 2000 по текущий момент.
    (есть еще вариант моей криворукости, т.к. оптил сеты первый раз в жизни, но вероятность такого варианта невысока)
    Пару сетов с бэктестами приложил.
    Сеты не для использования на реальном счете!!!


    Добавлено: 23-03-2015 13:51:01

    Посмотрел бэктесты по нескольким сетам для AUDCAD. В общем ситуация похожа. При симметричных значениях RSIlow и RSIhigh по количеству сделок существенный (в несколько раз) перекос в сторону коротких позиций.

    Добавлено: 23-03-2015 15:08:12

    Пооптил чуток по GBPAUD при симметричных и фиксированных параметрах RSIhigh и RSIlow (65 и 35 соответственно). Ситуация аналогична. Существенный перевес по количеству коротких позиций.
    В общем склоняюсь к варианту, что в сове ошибка. Вероятно соблюдение какого-то условия при входе в шорт не проверяется.
    Спойлер

    f871952f04cd04b94e4249cf12c97796 jpeg



    Добавлено: 24-03-2015 12:41:55

    Пооптил по EURUSD также с симметричными параметрами RSIlow и RSIhigh (35 и 65 соответственно). Аналогичная ситуация: более чем в 2.5 раза в сторону коротких позиций. При этом качество коротких входов оставляет желать лучшего.
    Спойлер

    956521bbc642e10f8dc570d6c4964d63 jpeg


    В оригинальном сете количество коротких входов снижено (и в итоге лишь чуть больше, чем количество длинных) путем увеличения RSIhigh.

    Как я понимаю, Сайлент на этого сова тоже забил, а жаль, т.к. сов очень перспективен и, судя по всему, при грамотном подборе сетов устойчив в долгосроке. Если Сайлент не хочет, возможно кто-то другой возьмется за поиск ошибки в коде? 8->
    Потом совместными усилиями можно будет сделать дюжину новых сетов для кроссов. :->
    Предыдущая версия, для которой было создано больше сетов для большего количества валютных пар, показывала практически граальные (для долгосрочника) результаты на бэктестах.

    Milky_way_EURJPY.rar69 скач.

    Изменено 24 марта, 2015 пользователем Doveman

    Автор#98

    Проверю завтра код
    Ну ошибок в коде, по крайней мере явных, я не нашел...

    Изменено 25 марта, 2015 пользователем Silentspec

    #99
    Silentspec, я правильно понимаю, что при ExtremumControl=true и Extremum=5 он тут входить не должен?
    Спойлер

    3783d28287d36bb11dbd9b4fefaba551 jpeg



    Оба ордера закрылись по стопу, хотя по идее один должен был закрыться раньше, как только свеча закрылась выше ББ2. Конечно, фразу из описания "следующая за ней" можно понимать двояко (сразу за ней, или просто когда-нибудь), но идеологически правильно, чтобы было важно, что цена вышла за пределы ББ2, а потом вернулась. Во всяком случае для покупок именно такое наблюдается.
    Спойлер

    39751cbc80a7edc3331f43b886d5d356 png

    Изменено 25 марта, 2015 пользователем Doveman

    #100


    Проверю завтра код
    Ну ошибок в коде, по крайней мере явных, я не нашел...


    Почему в функции OpenOrder отложка на продажу ставится на максимальный лоу?
    Спойлер



    void OpenOrder (int direction)
    {
    double OpenPrice = 0, StopLoss = 0, Lot = 0, SL = 0;

    if (direction == OP_SELL) {
    OpenPrice = MathMax(MathMax(Low[3], Low[4]), MathMax(Low[2], Low[1]));
    ^--- Максимальный лоу? И почему бы не использовать iHighest?

    //NormalizeDouble(Low[1]-OtstupOtlozhka*Point,Digits());
    StopLoss = SL(OpenPrice, OP_SELL);
    SL = NormalizeDouble((StopLoss - OpenPrice) / Point, 0);
    if(SL > MaxSL) {
    EAComment ("Стоплосс слишком большой!");
    return;
    }
    Lot = Lots(SL);
    if(!OrderSend(Symbol(), OP_SELLSTOP, Lot, OpenPrice, Slippage, 0, 0, ExpertName + " Magic:" + IntegerToString(Magic), Magic, 0, Red))
    EAComment ("Ошибка открытия ордера!");
    Sleep(1000);
    if(!OrderSend(Symbol(), OP_SELLSTOP, Lot, OpenPrice, Slippage, 0, 0, ExpertName + " Magic:" + IntegerToString(Magic), Magic, 0, Red))
    EAComment ("Ошибка открытия ордера!");
    return;
    }

    if (direction == OP_BUY) {
    OpenPrice = MathMax(MathMax(High[3], High[4]), MathMax(High[2], High[1]));
    //NormalizeDouble(High[1]+OtstupOtlozhka*Point,Digits());
    StopLoss = SL(OpenPrice, OP_BUY);
    SL = (OpenPrice - StopLoss) / Point;
    if(SL > MaxSL) {
    EAComment ("Стоплосс слишком большой!");
    return;
    }
    Lot = Lots(SL);
    if(!OrderSend(Symbol(), OP_BUYSTOP, Lot, OpenPrice, Slippage, StopLoss, 0, ExpertName + " Magic:" + IntegerToString(Magic), Magic, 0, Blue))
    EAComment ("Ошибка открытия ордера!");
    Sleep(1000);
    if(!OrderSend(Symbol(), OP_BUYSTOP, Lot, OpenPrice, Slippage, StopLoss, 0, ExpertName + " Magic:" + IntegerToString(Magic), Magic, 0, Blue))
    EAComment ("Ошибка открытия ордера!");
    return;
    }
    return;
    }


    Может нужно на минимальный лоу?

    Для публикации сообщений создайте учётную запись или авторизуйтесь

    Перейти к списку тем
    Форум · 2.0.20260627.0025