Изображение блога
OS_Engine_team
OS_Engine_team Блог компании Os_Engine
15 января 2024, 19:04

Индикатор MFI (Money Flow Index) и бесплатные роботы на нём.

Сегодня мы рассмотрим индикатор MFI. Узнаем историю создания индикатора и то, как он рассчитывается.

Также к данной статье будут прикреплены готовые скрипты роботов на этом индикаторе с возможностью торговать на нашей платформе OsEngine.

Индикатор MFI (Money Flow Index) и бесплатные роботы на нём.

Оглавление

1.      История создания индикатора MFI.

2.      Как проводятся расчеты индикатора MFI.

3.      Какие сигналы может подавать индикатор MFI.

4.      Роботы для OsEngine на индикаторе MFI (Money Flow Index).

4.1.   Стратегия зоны перепроданности и перекупленности индикатора MFI.

4.2.   Стратегия основанная на дивергенции индикатора MFI.

4.3.   Стратегия с индикаторами Sma и MFI.

5.      Итоговая таблица результатов.

 

1. История создания индикатора MFI.

Индикатор MFI был разработан трейдерами Джином Куонгом и Аврумом Судаком в 1989 году.

Money Flow Index или индекс денежного потока был создан в качестве осциллятора, который измеряет силу денежных потоков в активе, учитывая движение цены и объем торгов. MFI помогает трейдерам и инвесторам оценить, насколько активно происходит купля-продажа акций или других финансовых инструментов и дает представление о силе тренда.

Отражается в виде кривой линии, движущейся в диапазоне от 0 до 100.

Индикатор MFI быстро стал популярным инструментом в техническом анализе, так как позволяет обнаруживать расхождения между ценовыми и объемными показателями, что может указывать на будущие изменения цен. MFI часто используется для выявления перекупленности или перепроданности актива, а также для принятия решений о покупке или продаже инструмента в сочетании с другими индикаторами.

 

2. Как проводятся расчеты индикатора MFI.

Расчеты индикатора выполняются в несколько этапов:

1. Требуется вычислить типичную цену (Typical Price), которая представляет собой среднее арифметическое из цены открытия, цены максимума и цены минимума за торговый день.

Typical Price = (High + Low + Close) / 3

где
  • High — максимальная цена текущей свечи,
  •  Low — минимальная цена текущей свечи,
  •  Close — цена закрытия текущей свечи.

2. Требуется вычислить денежный поток (Money Flow), который представляет собой произведение цены (Typical Price) на объем торгов (Volume).

Money Flow = Typical Price (i) x Volume (i)

3. После этого производится расчет индекса направления движения (DMI), который позволяет определить направленность движения цены. Если типичная цена текущей свечи больше, чем типичная цена предыдущей свечи, то это положительный денежный поток (Positive Money Flow), а если текущая цена меньше — отрицательный денежный поток (Negative Money Flow).

4. Далее рассчитаем отношение суммы положительных и суммы отрицательных потоков.

Ratio = sum (Positive Money Flow, n) / sum (Negative Money Flow, n)

где
  • sum (Positive Money Flow, n) – сумма положительных потоков,
  • sum (Negative Money Flow, n) – сумма отрицательных потоков,
  • n – период расчёта.

5. Расчет индикатора MFI.

MFI = 100 — (100 / (1 + Ratio))

Расчёт индикатора в OsEngine можно посмотреть вот в этом файле:

https://github.com/AlexWan/OsEngine/blob/master/project/OsEngine/bin/Debug/Custom/Indicators/Scripts/MFI.cs

3. Какие сигналы может подавать индикатор MFI.

Рассмотрим основные сигналы, которые подает индикатор:

1. Перекупленность и перепроданность: индикатор MFI может использоваться для выявления зон перекупленности или перепроданности актива. Значения MFI выше 80 часто интерпретируются как сигнал перекупленности, что может указывать на возможное снижение цен. Значения MFI ниже 20 могут свидетельствовать о перепроданности и указывать на возможное повышение цен.

2. Дивергенция: дивергенция между индикатором MFI и ценовым графиком может указывать на предстоящий перелом в тренде. Например, если цена актива продолжает расти, а индикатор MFI падает, это может указывать на то, что рынок теряет силу, и предполагать будущее снижение цен и наоборот.

3. Пересечение медианной линии: пересечение уровня 50 снизу вверх может подавать дополнительный сигнал для покупки. Пересечение сверху вниз – дополнительный сигнал для продажи.

Также можно использовать данный индикатор совместно с другими для улучшения точности сигналов стратегии.

 

4. Роботы для OsEngine на индикаторе MFI (Money Flow Index).

4.1. Стратегия зоны перепроданности и перекупленности индикатора MFI.

https://github.com/AlexWan/OsEngine/blob/master/project/OsEngine/bin/Debug/Custom/Robots/OverbougthOversoldMFI.cs

Логика входа:

  • Покупаем, когда значение индикатора MFI пересекает уровень 20 снизу вверх.
  • Продаем, когда значение индикатора MFI пересекает уровень 80 сверху вниз.

Выход:

  • Из покупки. Устанавливаем трейлинг-стоп в процентах от минимума свечи, на которой вошли.
  • Из продажи. Устанавливаем трейлинг-стоп в процентах от максимума свечи, на которой вошли.

Индикатор MFI (Money Flow Index) и бесплатные роботы на нём.
Рис. 1. Пример логики.

Индикатор MFI (Money Flow Index) и бесплатные роботы на нём.
Рис. 2. Si, TF15 min, 2021-23, P/L 1 contract: 0,50%

Индикатор MFI (Money Flow Index) и бесплатные роботы на нём.
Рис. 3. BR, TF15 min, 2021-23, P/L 1 contract: 0,38%

Индикатор MFI (Money Flow Index) и бесплатные роботы на нём.
Рис. 4. BTCUSDT, TF15 min, 2021-23, P/L 1 contract: 0,46%

Индикатор MFI (Money Flow Index) и бесплатные роботы на нём.
Рис. 5. ETHUSDT, TF15 min, 2021-23, P/L 1 contract: 0,28%

 

4.2. Стратегия, основанная на дивергенции индикатора MFI.

https://github.com/AlexWan/OsEngine/blob/master/project/OsEngine/bin/Debug/Custom/Robots/DevergenceMFI.cs

Ссылка на ZigZag:

https://github.com/AlexWan/OsEngine/blob/master/project/OsEngine/bin/Debug/Custom/Indicators/Scripts/ZigZag.cs

Ссылка на ZigZagMFI (отдельный индикатор):

https://github.com/AlexWan/OsEngine/blob/master/project/OsEngine/bin/Debug/Custom/Indicators/Scripts/ZigZagMFI.cs

Для осуществления этой стратегии наша команда совместила индикатор MFI и ZigZag. Для более правильного определения дивергенции на этот индикатор также будет ссылка, он уже встроен в нашу платформу OsEngine. И также на графике мы тоже используем обычный индикатор ZigZag.

Логика входа:

  • Покупаем, когда на ценовом графике минимум за определенный отрезок времени ниже предыдущего минимума, а на индикаторе минимум выше предыдущего.
  • Продаём, когда на ценовом графике максимум за определенное количество времени выше предыдущего максимума, а на индикаторе максимум ниже предыдущего.

Выход:

  • Из покупки. Устанавливаем стоп и профит. Стоп ставится на минимум за указанный для стопа период, а профит равен размеру стопа умноженного на коэффициент из параметров.
  • Из продажи. Устанавливаем стоп и профит. Стоп ставится на максимум за указанный для стопа период, а профит равен размеру стопа умноженного на коэффициент из параметров.

Индикатор MFI (Money Flow Index) и бесплатные роботы на нём.
Рис. 6. Пример логики.

Индикатор MFI (Money Flow Index) и бесплатные роботы на нём.
Рис. 7. Si, TF15 min, 2021-23, P/L 1 contract: 0,09%

Индикатор MFI (Money Flow Index) и бесплатные роботы на нём.
Рис. 8. BR, TF15 min, 2021-23, P/L 1 contract: 0,07%

Индикатор MFI (Money Flow Index) и бесплатные роботы на нём.
Рис. 9. BTCUSDT, TF15 min, 2021-23, P/L 1 contract: 0,12%

Индикатор MFI (Money Flow Index) и бесплатные роботы на нём.
Рис. 10. ETHUSDT, TF15 min, 2021-23, P/L 1 contract: 0,09%

 

4.3. Стратегия с индикаторами Sma и MFI.

https://github.com/AlexWan/OsEngine/blob/master/project/OsEngine/bin/Debug/Custom/Robots/StrategySmaWithMFI.cs

Ссылка на Sma:

https://github.com/AlexWan/OsEngine/blob/master/project/OsEngine/bin/Debug/Custom/Indicators/Scripts/Sma.cs

Логика входа:

  • Покупаем, когда
  1. Свеча закрылась выше индикатора Sma;
  2. MFI выше уровня 50 и растущий.
  • Продаем, когда
  1. Свеча закрылась ниже индикатора Sma;
  2. MFI ниже 50 и падающий.

Выход:

  • Через определенное количество свечей.
Индикатор MFI (Money Flow Index) и бесплатные роботы на нём.
Рис. 11. Пример логики.

Индикатор MFI (Money Flow Index) и бесплатные роботы на нём.
Рис. 12. Si, TF15 min, 2021-23, P/L 1 contract: 0,87%

Индикатор MFI (Money Flow Index) и бесплатные роботы на нём.
Рис. 13. Br, TF15 min, 2021-23, P/L 1 contract: 0,51%

Индикатор MFI (Money Flow Index) и бесплатные роботы на нём.
Рис. 14. BTCUSDT, TF15 min, 2021-23, P/L 1 contract: 1,10%

Индикатор MFI (Money Flow Index) и бесплатные роботы на нём.
Рис. 15. ETHUSDT, TF15 min, 2021-23, P/L 1 contract: 0,61%

5. Итоговая таблица результатов.

Индикатор MFI (Money Flow Index) и бесплатные роботы на нём. 

Лучшие результаты у нас показала стратегия, основанная на индикаторах Sma и MFI.

* Информация представлена по расчетам OsEngine https://github.com/AlexWan/OsEngine 

Ссылки на роботов на GitHub:

  1. https://github.com/AlexWan/OsEngine
  2. https://github.com/AlexWan/OsEngine
  3. https://github.com/AlexWan/OsEngine

 

Пост из серии «Роботы и индикаторы»

Из данных статей Вы узнаете базовую информацию о том или ином индикаторе. А также можно посмотреть роботов на данных индикаторах с исходным кодом. 

Оглавление здесь: https://smart-lab.ru/company/os_engine/blog

Комментарии открыты для друзей, добавляйтесь!

Индикатор MFI (Money Flow Index) и бесплатные роботы на нём.

OsEngine: https://github.com/AlexWan/OsEngine
Поддержка OsEngine: https://t.me/osengine_official_support

Регистрируйся в АЛОР и получай бонусы: https://www.alorbroker.ru/open
Сайт АЛОР БРОКЕР: https://www.alorbroker.ru
Раздел «Для клиентов»: https://www.alorbroker.ru/openinfo/for-clients
Программа лояльности от АЛОР БРОКЕР и OsEngine: https://smart-lab.ru/company/os_engine/blog/972745.php

Индикатор MFI (Money Flow Index) и бесплатные роботы на нём.
0 Комментариев

Активные форумы
Что сейчас обсуждают

Старый дизайн
Старый
дизайн