Ассоциативные правила на форексе - страница 2

 
Maxim Dmitrievsky #:

Ну постройте дерево по своим данным, а потом вытаскивайте из него правила

Правил будет много, поэтому пива нужно будет взять тоже много.

Если получится, попробую. С пивом точно получится

[Удален]  
Ivan Butko #:

Если получится, попробую. С пивом точно получится

Или сделайте просто оптимизацию в МТ, перебирая всякие условия :D Зачем усложнять себе жизнь.
 
Ivan Butko #:

Негласное правило "нет сигнала - нет системы" говорит о том, что пока на этом не заработали))

Оригинальное применение натолкнуло на мысль о сроке годности продуктов: покупая набор, при котором вероятней всего мы докупим молоко, при текущей транзакции (совершённой уже) мы как-то косвенно прогнозируем будущее: 100%-ю вероятность того, что молоко долго не проживёт (100%, потому что факт). 

Это что-то очевидное, но в контексте форекса можно запихать в таблицу цены следующим образом: поскольку таблица чаще всего требует бинарные признаки (1/0, есть/нет, правда/ложь), то в каждую транзакцию пихаем ту же бинарную хронологию (цена выше предыдущей - "1", не выше - "0"), но вот последнюю ячейку адаптируем под целевую: в ней будет "1" или "да", если после неё пойдёт тренд. В остальных случаях будет 0/нет. 

Похоже на обычную классификацию. Но если классификация каждому набору придаст только одно из двух значений (1/0), в ассоциативных правилах можно покопаться среди этих самых "единиц" и поискать в них правила, в которых эта самая единица в последней ячейке - является следствием, не входящим в набор. И может быть мы отфильтруем нерабочие сеты в классификации (просто предположение, ничем не обосную). 

Попробую пока засунуть в таблицу валютные пары-мажоры и посмотреть, что выйдет. Правило экспорта бинарное в одну сторону: "если цена прошла 1000 пипсов вверх - 1, нет - 0"... хотя, нет, сперва попроще "если Close[n+1] >  Close[n+1] - 1, нет - 0". 

Ничего не понимаю 
 
Maxim Dmitrievsky #:
Или сделайте просто оптимизацию в МТ, перебирая всякие условия :D Зачем усложнять себе жизнь.

Это слишком дальновидно))) Я так далеко не думаю)

Если видите бесперспективность сабжа, я не против. Что смогу сделаю, убедюся в этом

 
Vladislav Vidiukov #:
Ничего не понимаю 

Я тоже, пытаюсь понять. 

Но, мысль с множеством валют и поиском зависимой - это самое подходящее под сабж, почему бы не попробовать. 

[Удален]  
Ivan Butko #:

Это слишком дальновидно))) Я так далеко не думаю)

Если видите бесперспективность сабжа, я не против. Что смогу сделаю, убедюся в этом

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

Отчет оптимизации содержит кучу этих правил уже. Можете потом "анализировать".

Никакого другого смысла не предусмотрено.

 
Ivan Butko #:

Я тоже, пытаюсь понять. 

Но, мысль с множеством валют и поиском зависимой - это самое подходящее под сабж, почему бы не попробовать. 

Что бы что то понять относительно рынков надо сначала построить правильно таблицу.

В позиции 103 у тебя 2 элемента

В позиции 104 у тебя  4 элемента.

Сначала выровняй по 3 в каждой. И дальше будет понятней.

 
Maxim Dmitrievsky #:

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

Отчет оптимизации содержит кучу этих правил уже. Можете потом "анализировать".

Никакого другого смысла не предусмотрено.

Благодарю. Нужно будет знакомиться с темой. 

Uladzimir Izerski #:

Что бы что то понять относительно рынков надо сначала построить правильно таблицу.

В позиции 103 у тебя 2 элемента

В позиции 104 у тебя  4 элемента.

Сначала выровняй по 3 в каждой. И дальше будет понятней.

А я и не заметил, что там разное количество объектов) У меня на автомате ровная. 



Ivan Butko #:


Попробую пока засунуть в таблицу валютные пары-мажоры и посмотреть, что выйдет. Правило экспорта бинарное в одну сторону: .............., сперва попроще "если Close[n+1] >  Close[n+1] - 1, нет - 0". 

— Поясни, чё это такое?

antecedents  consequents  antecedent support  consequent support  support  confidence  lift  leverage  conviction  zhangs_metric

frozenset({'EURUSD'})  frozenset({'GBPUSD'})  0.4941440719  0.4951066902  0.3561687791  0.7207792208  1.4558058597  0.1115147432  1.8082225514  0.6189414914

frozenset({'GBPUSD'})  frozenset({'EURUSD'})  0.4951066902  0.4941440719  0.3561687791  0.7193778354  1.4558058597  0.1115147432  1.802622857  0.6201215515

frozenset({'EURUSD'})  frozenset({'NZDUSD'})  0.4941440719  0.4971923632  0.3502326328  0.7087662338  1.4255372491  0.1045479739  1.7264743827  0.5901089046


ChatGPT:

— Исходя из данных результатов, можно сделать следующие выводы:

- Валютные пары EURUSD и GBPUSD связаны с уверенностью в 72% (confidence). Значение lift больше 1, что указывает на положительную связь между этими парами. Это говорит о том, что когда трейдеры покупают EURUSD, они склонны также покупать GBPUSD в 72% случаях.

- Валютные пары GBPUSD и EURUSD также связаны с уверенностью в 72% и имеют значение lift больше 1, подтверждая связь между ними.

- Валютные пары EURUSD и NZDUSD связаны с уверенностью в 71% (confidence). Хотя значение lift также больше 1, оно ниже, чем в предыдущих правилах, что указывает на более слабую связь между этими парами.

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


— А это чё?

frozenset({'XAUUSD', 'GBPUSD', 'NZDUSD', 'AUDUSD'}) frozenset({'EURUSD'}) 0.1610781325 0.4941440719 0.1321995829 0.8207171315 1.6608863248 0.0526037786 2.8215519546 0.4743133421


ChatGPT:

 Антецедент: XAUUSD, GBPUSD, NZDUSD, AUDUSD Консеквент: EURUSD

  • Поддержка антецедента: 0.1610781325
  • Поддержка консеквента: 0.4941440719
  • Поддержка обоих: 0.1321995829
  • Достоверность: 0.8207171315
  • Lift: 1.6608863248
  • Leverage: 0.0526037786
  • Conviction: 2.8215519546
  • Zhang's metric: 0.4743133421

Это правило указывает на то, что когда XAUUSD, GBPUSD, NZDUSD, AUDUSD присутствуют вместе (последние бычьи свечи у всех четырёх), вероятность появления EURUSD  (вероятность бычьей свечи одномоментно) также повышается. Поддержка антецедента указывает на долю случаев, в которых наблюдается данное сочетание в выборке данных. В данном случае, поддержка антецедента составляет 0.1610781325.


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

(Добавил к мажорам кроссы с евро)

—  frozenset({'EURJPY', 'NZDUSD', 'AUDUSD', 'EURUSD', 'GBPUSD'}) frozenset({'EURCHF'}) 0.1595633678 0.4953848623 0.1043422426 0.6539235412 1.3200313351 0.0252969655 1.4581030431 0.2884717498

ChatGPT:

  Правило показывает связь между набором валютных пар (EURJPY, NZDUSD, AUDUSD, EURUSD, GBPUSD) и валютной парой EURCHF. Значение confidence равно 0.6539235412, что означает, что когда все эти пять валютных пар присутствуют (последние бычьи свечи у всех четырёх), с вероятностью около 65% появляется пара EURCHF (вероятность появления у неё бычьей свечи параллельно). Значение lift равно 1.3200313351, что указывает на некоторую положительную связь между этими валютными парами.


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

(Добавил ВСЕ пары из обзора рынка)

—   frozenset({'AUDCAD', 'NZDUSD', 'AUDCHF', 'AUDUSD', 'EURUSD', 'NZDJPY', 'GBPUSD'}) frozenset({'GBPCHF'}) 0.1470422987 0.5003611847 0.1155790994 0.7860262009 1.570917619 0.0420048406 2.3350467083 0.4260813651


ChatGPT:

   Правило показывает связь между комбинацией валютных пар AUDCAD, NZDUSD, AUDCHF, AUDUSD, EURUSD, NZDJPY, GBPUSD и валютной парой GBPCHF. Значение confidence равно 0.7860262009, что означает, что при наличии всех указанных валютных пар с вероятностью около 79% появляется пара GBPCHF (вероятность бычьей свечи). Значение lift равно 1.570917619, что указывает на некоторую положительную связь между этими валютными парами.


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



Мило. Что-то похожее на корреляцию. 

 
Ivan Butko #:


— Поясни, чё это такое?


antecedents  consequents  antecedent

ChatGPT:

— Исходя из данных результатов, можно сделать следующие выводы:

- Валютные пары EURUSD и GBPUSD связаны с уверенностью в 72% (confidence). Значение lift больше 1, что указывает на положительную связь между этими парами. Это говорит о том, что когда трейдеры покупают EURUSD, они склонны также покупать GBPUSD в 72% случаях.

- Валютные пары GBPUSD и EURUSD также связаны с уверенностью в 72% и имеют значение lift больше 1, подтверждая связь между ними.

- Валютные пары EURUSD и NZDUSD связаны с уверенностью в 71% (confidence). Хотя значение lift также больше 1, оно ниже, чем в предыдущих правилах, что указывает на более слабую связь между этими парами.

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


Па-ба-бам! И эта связь USD, )
 
Ivan Butko #:

Это что-то очевидное, но в контексте форекса можно запихать в таблицу цены следующим образом: поскольку таблица чаще всего требует бинарные признаки (1/0, есть/нет, правда/ложь), то в каждую транзакцию пихаем ту же бинарную хронологию (цена выше предыдущей - "1", не выше - "0"), но вот последнюю ячейку адаптируем под целевую: в ней будет "1" или "да", если после неё пойдёт тренд. В остальных случаях будет 0/нет. 

Похоже на обычную классификацию. Но если классификация каждому набору придаст только одно из двух значений (1/0), в ассоциативных правилах можно покопаться среди этих самых "единиц" и поискать в них правила, в которых эта самая единица в последней ячейке - является следствием, не входящим в набор. И может быть мы отфильтруем нерабочие сеты в классификации (просто предположение, ничем не обосную). 


Если взять пары, которые в самом верху таблицы и просто их соединить все, как условие, то получается такая картина за 10 лет




Максим прав. Надо прописать условия и пусть оптимизатор перебирает, может сделки будут почаще, и результат поддерживаться