Количественная стратегия, основанная на показателях Aroon

Автор:Чао Чжан, Дата: 2023-09-19 15:47:21
Тэги:

Обзор

Эта стратегия использует индикатор Aroon для определения направления тренда рынка для генерации простых сигналов купли и продажи.

Логика стратегии

  1. Вычислить балы с самым высоким и самым низким максимумом за 7 периодов.

  2. Вычислить соотношение наивысшей высокой стойки к общему количеству строк в верхней строке.

  3. Вычислить соотношение наименьшей низкой стойки к общему количеству строк в виде нижней строки.

  4. Сделайте сигнал покупки, когда верхняя линия больше нижней линии.

  5. Сгенерируйте сигнал продажи, когда нижняя линия больше верхней линии.

  6. Управляйте направлениями входа с помощью параметров стратегии.

  7. Открыть и закрыть ордера в определенный срок.

Анализ преимуществ

  1. Торговля, основанная исключительно на показателях, основанная исключительно на Aroon.

  2. Простые параметры показателей, легко понять и оптимизировать.

  3. Гибкий выбор длинного/короткого направления для различных приборов.

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

  5. Ясные торговые сигналы, которые легко понять и выполнить.

Анализ рисков

  1. Склонность к ложным сигналам в качестве единственного индикатора.

  2. Не может точно оценить силу восходящих/упадущих тенденций.

  3. У него немного задержки, не в состоянии вовремя зафиксировать обратный ход.

  4. Не может динамически корректироваться на основе изменений рынка.

  5. Возможность риска снижения.

Руководство по оптимизации

  1. Испытания с использованием различных инструментов и сроков.

  2. Добавить фильтры для улучшения качества сигнала.

  3. Включить индикаторы тенденции для определения общей тенденции.

  4. Разработать динамические выходы на основе развивающихся тенденций.

  5. Оптимизировать параметры и комбинации испытаний.

  6. Добавьте размер позиций и управление рисками.

Резюме

Эта стратегия обеспечивает простые трендовые сигналы на основе Aroon. Есть место для улучшения в предотвращении вводящих в заблуждение сигналов и контроля рисков. Но логика проста и ясна, служащая базовой квантовой стратегией для улучшения. В целом практическая стратегия, достойная дальнейшего тестирования и оптимизации.


/*backtest
start: 2023-08-19 00:00:00
end: 2023-09-18 00:00:00
period: 1h
basePeriod: 15m
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/

//Noro
//2018
//@version=2

strategy(title = "Noro's Aroon Strategy v1.0", shorttitle = "Aroon str 1.0", overlay = false, default_qty_type = strategy.percent_of_equity, default_qty_value = 100, pyramiding = 0)

//Settings
needlong = input(true, defval = true, title = "Long")
needshort = input(false, defval = false, title = "Short")
length = input(7, defval = 7, minval = 1, maxval = 1000)
fromyear = input(1900, defval = 1900, minval = 1900, maxval = 2100, title = "From Year")
toyear = input(2100, defval = 2100, minval = 1900, maxval = 2100, title = "To Year")
frommonth = input(01, defval = 01, minval = 01, maxval = 12, title = "From Month")
tomonth = input(12, defval = 12, minval = 01, maxval = 12, title = "To Month")
fromday = input(01, defval = 01, minval = 01, maxval = 31, title = "From Day")
today = input(31, defval = 31, minval = 01, maxval = 31, title = "To Day")

//Aroon
upper = 200 * (highestbars(high, length+1) + length)/length
lower = 200 * (lowestbars(low, length+1) + length)/length
plot(upper, color=#FF6A00)
plot(lower, color=#0094FF)

//Signals
up = upper > lower
dn = upper < lower

//Trading
if up
    strategy.entry("Long", strategy.long, needlong == false ? 0 : na)
    
if dn
    strategy.entry("Short", strategy.short, needshort == false ? 0 : na)
 
if true
    strategy.close_all()

Больше