[TOC]
В техническом анализе Арон - это уникальный технический показатель. Слово "арон" происходит из китайского языка и означает светящийся светящийся лучик. В отличие от MA, MACD и KDJ, он был широко известен и был выпущен позже, и был изобретен только в 1995 году Тушаром Чанде, автором которого также были изобретены CMO и IMI.
Аронский индикатор помогает трейдерам предсказать изменение ценового движения в зависимости от его местоположения в трендовой зоне, рассчитывая количество K-линий между предыдущими максимумами и минимумами. Он состоит из двух частей, а именно: Аронской линии (AroonUp) и Аронской линии (AroonDown), которые движутся вверх и вниз между 0 и 100.
Аронский показатель требует сначала настроить параметр временного цикла, как настроить параметр равнолинейного цикла. В традиционном торговом программном обеспечении это число циклов составляет 14, конечно, этот параметр цикла не фиксирован, вы также можете настроить его на 10 или 50 и т. д. Для удобства понимания, на время определим параметр временного цикла как: N. После определения N мы можем вычислить Аронскую линию вверх ((AroonUp) и Аронскую линию вниз ((AroonDown)), конкретные формулы расчета следующие:
Из этой формулы мы можем примерно увидеть, что думает индикатор Алона. То есть: сколько циклов, цены в ближайшие высокие / низкие, вспомогательный прогноз о том, будет ли текущий тренд продолжаться, а также измеряет силу и слабость текущего тренда. Если мы классифицируем этот индикатор, то очевидно, что он относится к типу трендоуслеживания.
Арон-Up и Арон-Down отражают, что текущее время находится на расстоянии от предыдущего максимума или минимума, если время ближе, то больше, если время дальше, то меньше. И когда две линии пересекаются, это предвещает, что может произойти изменение в направлении цены, и если Арон-Up указывает, что цена находится в восходящей тенденции, будущая цена может быть еще выше; если Арон-Down указывает, что цена находится в нисходящей тенденции, будущая цена может быть еще ниже.
В то же время мы можем установить несколько фиксированных значений, чтобы точно определить время входа. Мы знаем, что индикатор Арон всегда работает вверх и вниз в диапазоне от 0 до 100, то есть, когда рынок находится в восходящем тренде, то есть, когда АронUp находится выше АронDown, когда АронUp больше 50, это означает, что рост рынка уже сформировался, и будущие цены могут продолжать расти; когда АронUp проходит ниже 50, это означает, что динамика роста ослабевает, и будущие цены могут колебаться и падать.
Напротив, когда рынок находится в нисходящем тренде, то есть, когда AroonDown находится выше AroonUp, когда AroonDown больше 50, это означает, что нисходящая тенденция уже сложилась, и будущие цены могут продолжать падать; когда AroonDown проходит ниже 50, это означает, что динамика падения цен ослабевает, и будущие цены могут колебаться и расти.
После того, как логика транзакций будет прочищена, мы сможем реализовать ее с помощью кода, и в этом посте мы продолжим использовать язык JavaScript, разновидности или товарные фьючерсы.fmz.com> Вход > Центр управления > Библиотека политик > Создание новых политик, чтобы начать писать политику, обратите внимание на комментарии в коде ниже.
Первый шаг: использовать рамки CTAОбратите внимание! Не забудьте нажать на нижеприведенное:商品期货交易类库
Если вы хотите перейти на цифровую валюту, нажмите:数字货币现货交易类库
。
function main() {
// ZC000/ZC888 指用指数做为行情源但交易映射到主力连续合约上
$.CTA("ZC000/ZC888", function(st) {
})
}
Шаг 2: Получить данные
function main() {
$.CTA("ZC000/ZC888", function(st) {
var r = st.records; // 获取K线数组
var mp = st.position.amount; // 获取持仓数量
})
}
Третий шаг: вычислить показатель Алона
function main() {
$.CTA("ZC000/ZC888", function(st) {
var r = st.records; // 获取K线数组
var mp = st.position.amount; // 获取持仓数量
if (r.length < 21) { // 判断K线数据是否足够
return;
}
var aroon = talib.AROON(r, 20); // 阿隆指标
var aroonUp = aroon[1][aroon[1].length - 2]; // 阿隆指标上线倒数第2根数据
var aroonDown = aroon[0][aroon[0].length - 2]; // 阿隆指标下线倒数第2根数据
})
}
Шаг 4: Вычислить условия и заказать
function main() {
$.CTA("ZC000/ZC888", function(st) {
var r = st.records; // 获取K线数组
var mp = st.position.amount; // 获取持仓数量
if (r.length < 21) { // 判断K线数据是否足够
return;
}
var aroon = talib.AROON(r, 20); // 阿隆指标
var aroonUp = aroon[1][aroon[1].length - 2]; // 阿隆指标上线倒数第2根数据
var aroonDown = aroon[0][aroon[0].length - 2]; // 阿隆指标下线倒数第2根数据
if (mp == 0 && aroonUp > aroonDown && aroonUp > 50) {
return 1; // 多头开仓
}
if (mp == 0 && aroonDown > aroonUp && aroonDown > 50) {
return -1; // 空头开仓
}
if (mp > 0 && (aroonUp < aroonDown || aroonUp < 50)) {
return -1; // 多头平台
}
if (mp < 0 && (aroonDown < aroonUp || aroonDown < 50)) {
return 1; // 空头平台
}
})
}
// 以上代码就是基于JavaScript语言完整的策略。
// --------------------分割线--------------------
// 为了照顾伸手党,顺便也把这个策略翻译成My语言。同时该也可以用于数字货币,以下是完整的策略代码:
AROONUP := ((N - HHVBARS(H, N)) / N) * 100; // 阿隆指标上线
AROONDOWN := ((N - LLVBARS(L, N)) / N) * 100; // 阿隆指标下线
AROONUP > AROONDOWN && AROONUP > BKV, BK; // 多头开仓
AROONDOWN > AROONUP && AROONDOWN > SKV, SK; // 空头开仓
AROONUP < AROONDOWN || AROONUP < SPV, SP; // 多头平台
AROONDOWN < AROONUP || AROONDOWN < BPV, BP; // 空头平台
AUTOFILTER;
Чтобы приблизиться к реальной торговой среде, мы провели стресс-тестирование с использованием двух выходов на открытие и двухкратной платы за процедуру при ретро-тестировании.
Тестные среды Доходы подробно Финансовая кривая Судя по вышеизложенным результатам ретроспекции, стратегия хорошо работает в период, когда рыночная динамика находится на подъеме, а Алонский показатель может полностью отслеживать рынок в случае роста или падения. Финансовая кривая также в целом движется вверх, и не наблюдается значительного отката.
В стратегии мы фиксируем некоторые параметры, такие как:aroonUp илиaroonDown больше или меньше 50, что приводит к задержке стратегии, в большинстве случаев, когда рынок растет или падает, прежде чем начать покупку или продажу. Это, хотя и повышает шансы на выигрыш, уменьшает максимальный уровень отзыва, но также упускает много выгод, что также подтверждает, что прибыль и убыток совпадают.
МомоксСпасибо, это интересно.