Моя валютная стратегия - PipMachine. - страница 3

 

Привет, Мук.

Вы имеете в виду сообщение, которое я сделал около 30 минут назад, в котором говорилось, что оно не на 100% идеально и нуждается в доработке? Если да, то я упомянул то, о чем вы спрашиваете в этой теме.

Что касается вашего другого вопроса, нет, я не делал никаких отчетов о производительности. В основном потому, что не считал это необходимым.

 
de04:
Привет FXGuy2000 Я только что попробовал вашу систему и сделал несколько пунктов для меня. Спасибо за вашу отличную систему.

Всегда пожалуйста. Надеюсь, у вас все получится.

Я надеюсь, вы сначала тестируете на демо-счете? Если нет, пожалуйста, сделайте это, и, по крайней мере, в течение 3-6 месяцев, чтобы познакомиться с различными возникающими паттернами.

Желаю удачи.

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

Я попытался настроить лоты и размер риска, и получил эту ошибку.

Compiling 'MA CrossOver with Filters.mq4'...

Функция "BreakEvens" не ссылается и будет удалена из exp-файла

Функция "TrailingAlls" не ссылается и будет удалена из exp-файла

0 ошибок, 2 предупреждения.

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

Вау, у вас определенно есть талант, Маджи, для первой попытки - просто отлично.

Я попробовал ее в тестере стратегий и получил ниииииизкие результаты.

Однако, нет, не но. но однако... Он нуждается в доработке.

В этом советнике есть некоторые моменты, когда он ведет себя не так, как должен.

Я собираюсь создать картинку, чтобы вы поняли, что я имею в виду.

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

В любом случае, надеюсь, это поможет...

Отличная работа.

Файлы:
 

FXGuy,

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

Кроме того, на вашем графике в одном месте вы говорите, что он купил слишком поздно, желтым цветом (слева). На самом деле он продавал позицию, которую купил раньше. На самом деле, я думаю, что вход был за несколько баров до того, как вы отметили на графике место для входа, когда программа обнаружила, что условия входа выполнены. Как обычно, я просто пытаюсь внедрить правила, поэтому чем точнее будут определены правила, тем проще это будет сделать.

Спасибо, что поделились,

Maji

 
Maji:
FXGuy, Пожалуйста, дайте мне полные правила. Однако для целей программирования такие правила, как не покупать, когда цена находится внутри канала, не будут работать.

heehee.... да, я знаю это... Я думал, что вы можете сказать, что классифицируется как канал...

Погодите, дайте мне снова взглянуть на канал и посмотреть, какой диапазон цифр был.... .... .... ... Я бы сказал, когда ADX, +DI и -DI находятся в диапазоне 0-20. Однако, я думаю, было бы хорошо, если бы переменная могла быть изменена, чтобы ее мог настроить пользователь, и диапазоны для Macd и для изменения EMA тоже.

Хорошо, давайте посмотрим, все ли в порядке...

ADX рулит:

========

Условие не действовать по ADX:

---------------------------

Итак, если (ADX) && (+DI) && (-DI) находятся в диапазоне 0-20, не входите ни в длинные, ни в короткие позиции.

Условие для покупки:

-----------------

Если (ADX) && (+DI) или (ADX) && (-DI) или (ADX) && (+DI) && (-DI) находятся в диапазоне 25+, начните торговый триггер на покупку, если это условие истинно: ADX = 25+ && (+DI) > (-DI) или равно или больше (==>) = ПОКУПАТЬ

Условие для ПРОДАЖИ:

-----------------

ЕСЛИ, (ADX) && (+DI) или (ADX) && (-DI) или (ADX) && (+DI) && (-DI) находятся в диапазоне 25+ начните срабатывание сделки покупки на основе, ЕСЛИ это условие истинно: ADX = 25+ && (-DI) > (+DI) или Равно или больше (==>) = ПРОДАЖА

Условие для закрытия длинной или короткой позиции:

---------------------------------

ЕСЛИ ADX своего самого высокого последнего отсчета, уменьшается более чем на 10. Т.е. на графике выше, где фиолетовая линия, зеленая сплошная линия ADX достигает 59, являясь последним известным максимумом ADX, если этот показатель снижается на 10 или более, закрываем длинную или короткую позицию.

====================================

Правила для EMA.

===========

Условие покупки:

--------------

Если условие ADX BUY истинно, то:

ЕСЛИ EMAFast > EMASlow BUY/Go Long.

Условие продажи:

-------------

Если условие ADX SELL истинно, то:

ЕСЛИ EMAFast < EMASlow, SELL/Go Short.

Условие закрытия:

---------------

Если условие "ANY" вместе истинно, то:

Close Long = IF EMAFast is < EMASlow ONLY IF

ADX < на 10 или более от своего самого высокого последнего известного состояния. ИЛИ Macd = -0.00

Close Short = ЕСЛИ EMAFast > EMASlow ТОЛЬКО ЕСЛИ

ADX < на 10 или более от своего самого высокого последнего известного состояния. ИЛИ Macd = 0.00+

Условие покупки Macd:

============

Торговля на покупку, если одно или оба или все условия верны.

Если сигнальная линия Macd находится на уровне 0.00+, а условие EMAFast > EMASlow и или ЕСЛИ (условие покупки ADX истинно), идите в LONG/BUY.

Условие продажи Macd:

-------------------

ПРОДАВАЙТЕ сделку, если одно или оба или все условия верны.

Если сигнальная линия Macd находится на уровне -0.00, а условие EMAFast < EMASlow и или ЕСЛИ (условие ADX SELL истинно), переходите к SHORT/SELL.

Условие закрытия Macd:

--------------------

Закройте короткую сделку, если любое условие истинно:

IF macd is +0.00 WHILE EMAFast is > EMASlow and OR ADX && +DI && -DI is in the range of 0 - 20. ЗАКРЫТЬ ТОРГОВЛЮ.

Закройте длинную сделку, если любое условие истинно:

IF macd is -0.00, WHILE, EMAFast is < EMASlow and or ADX && +DI && -DI is in the range of 0 - 20. ЗАКРЫВАЕМ ТОРГОВЛЮ

Maji:
Правила должны быть математически определены. Если вы можете дать математическое определение канала, я могу попытаться преобразовать его в компьютерный код.

Надеюсь, вышеизложенное помогло... потребовалось время, чтобы разобраться, как это напечатать... lol

Надеюсь, вы сможете это понять?

Маджи:

Также, на вашем графике, в одном месте вы говорите, что он купил слишком поздно, желтым цветом (слева). На самом деле он продавал позицию, которую купил раньше. На самом деле, я думаю, что вход был за несколько баров до того, как вы отметили на графике место для входа, когда программа обнаружила, что условия входа выполнены. Как обычно, я просто пытаюсь внедрить правила, поэтому чем точнее будут определены правила, тем проще это будет сделать.

Спасибо, что поделились,

Maji

Понятно, но я был действительно впечатлен тем, как вам удалось запечатлеть большую часть этого. Отличная работа.

 

Спасибо FXguy, но я запутался еще больше.

Я ожидал таких правил, как:

если условие1 и условие2 и (не условие3) и т.д. ... то покупай.

Разбив их на части, вы запудрили мне мозги, а это не так уж и сложно.

Кстати, лучшие покупки или продажи происходят при низких значениях ADX, посмотрите на графики и вы увидите. Я думаю, что слишком много фильтров испортит систему, так же как слишком много поваров испортят суп. Если базовая система надежна, то зачем с ней возиться. Как бы вы ни старались, у вас будут потери. Зачем о них беспокоиться? Я, например, не могу справиться со слишком большим количеством фильтров, и любая система с более чем 3-4 правилами выходит за рамки моего короткого периода внимания.

Еще раз спасибо,

Maji

 

Привет,

Извините за это.

Система разработана таким образом, чтобы ловить только большие движения, а не маленькие.

Поэтому я не уверен, что вы можете управлять этим, основываясь на том, когда ADX = 25 и т.д.

 

Или как насчет WorkAround4: это еще проще, чем все остальные.

LONG.

ЕСЛИ ADX & +DI > 20 == LONG

ЕСЛИ LONG и (+DI < 20) ЗАКРЫТЬ сделку LONG.

SHORT.

ЕСЛИ ADX & -DI > 20 == SHORT

ЕСЛИ SHORT и (-DI < 20) ЗАКРЫТЬ сделку SHORT.

ИЛИ

WorkAround5:

LONG:

ЕСЛИ +DI и -DI равны (пересеклись), дождитесь (+DI и ADX) > 20

ЕСЛИ LONG и (+DI < 20) ЗАКРЫТЬ сделку LONG.

SHORT

ЕСЛИ (+DI и -DI) равны (пересекаются), дождитесь (-DI и ADX) > 20

ЕСЛИ SHORT и (-DI < 20) ЗАКРЫТЬ сделку SHORT.

 

Я думал, есть ли способ упростить ситуацию... Вот несколько вещей, которые могут помочь.

Вкратце, ADX должен быть выше 20 и расти, чтобы подтвердить, что текущий тренд сильный (независимо от того, растет цена или падает), +DI и -DI должны пересекаться, и тот из них, который имеет отношение к направлению тренда (+DI = восходящий тренд, -DI + нисходящий тренд), должен расти и быть выше 20.

WorkAround1:

LONG

====

Если условия +DI и -DI пересеклись, проверьте, когда состояние ADX и +DI равно 20 или больше. Если это так, ПОКУПАЙТЕ. (ADX и +DI могут не быть на уровне 20, когда +DI и -DI пересеклись, но дождитесь этого состояния перед покупкой).

ПРОДАВАТЬ

====

Если условия, при которых +DI и -DI пересеклись, проверьте, когда состояние ADX & -DI равно 20 или больше. Если это так, ПРОДАВАЙТЕ. (ADX & -DI может не быть на уровне 20, когда +DI & -DI пересеклись, но дождитесь условия перед продажей).

ЗАКРЫТЬ длинную позицию:

=========

Чтобы закрыть позицию LONG, проверьте, не превышает ли EMAFast значение EMASlow.

CLOSE Short:

==========

Чтобы закрыть позицию SHORT, убедитесь, что EMAFast < EMASlow.

---------------------------------

Вот еще один способ взглянуть на это.

WorkAround2:

LONG:

=====

Если условия +DI и -DI пересеклись, проверьте, когда условия ADX и +DI равны 20 или более, и если цена валютной пары выше EMA1(EMAFast). Если это так, покупайте.

КОРОТКО:

======

Если условия +DI и -DI пересеклись, проверьте, когда условия ADX и -DI равны 20 или более и если цена валютной пары ниже EMA1(EMAFast). Если это так, ПРОДАВАЙТЕ.

CLOSE Long:

=========

Чтобы закрыть позицию LONG, проверьте, не превышает ли EMAFast значение EMASlow.

CLOSE Short:

==========

Чтобы закрыть позицию SHORT, убедитесь, что EMAFast < EMASlow.

ИЛИ

WorkAround3:

Здесь используется только ADX и ничего больше. Это S-A-R. (Stop And Reverse). Похож на WorkAround1, но использует противоположные сигналы для закрытия и повторного открытия в другую сторону.

LONG

====

Если условия, где +DI и -DI пересеклись, проверьте, когда состояние ADX & +DI составляет 20 или более. Если это так, покупайте.

ПРОДАВАТЬ

====

Если условия +DI & -DI пересеклись, проверьте, когда условие ADX & -DI равно 20 или больше. Если это так, ПРОДАВАЙТЕ.

Закрыть длинную позицию:

=========

Если условия +DI & -DI пересеклись, проверьте, когда условие ADX & -DI равно 20 или больше. Close Long.

Закрыть продажу:

========

Если условия +DI & -DI пересеклись, проверьте, когда условие ADX & +DI равно 20 или больше. Закрыть короткую позицию.

============

Я не уверен, что это еще больше запутывает ситуацию. Это настолько просто, насколько я могу сузить круг поиска.