[TOC]
Как известно, адаптивная средняя (KAMA) относится к категории движущихся средних (Moving Average), но отличается от традиционных движущихся средних тем, что она очень умна. Мы знаем, что обычные средние имеют много недостатков, например: короткие средние близки к движению цен, очень чувствительны, но легко генерируют ложные сигналы; долгосрочные средние очень точны в определении тренда, но часто после того, как ситуация продвинулась, они реагируют.
Умный способ KAMA заключается в том, что он может регулировать свою чувствительность в зависимости от текущего состояния рынка, то есть волатильности. Его форма заключается в том, что в бурном рынке изменения KAMA значительно замедляются; когда наступает тенденция, он быстро реагирует.
Из них n, n1 и n2 являются параметрами цикла, при которых число циклов n по умолчанию составляет 10, n1 - кратковременное число циклов и n2 - долгосрочное число циклов 30. Это также набор параметров, идентифицированный автором KAMA Перри Кауфманом.
Метод расчета KAMA состоит в следующем: сначала вычисляется направление (DIR) и волатильность (VIR), затем вычисляется эффективность в соотношении к обоим. Эффективность (ER), измеряющая степень изменения цены, также проста: направление / волатильность. Результат расчета составляет от 0 до 1, когда значение ER ближе к 0 указывает на то, что рынок находится в состоянии волатильности, а когда значение ER ближе к 1 указывает на то, что рынок находится в состоянии тенденции.
При вычислении эффективности (ER) можно соединить быструю и медленную средние скорости и вывести гладкую константу (CS): эффективность * (быстрая - медленная скорость) + медленная скорость. CS представляет скорость движения тенденции. Согласно вычислительной формуле CS мы можем обнаружить, что изменение CS всегда пропорционально изменению ER.
Затем вычисляются коэффициенты (CQ) на основе скользких множителей с целью сделать более важную роль в расчете параметров медленного цикла, что является более консервативной практикой. Коэффициент (CQ) определяет конечную степень скользкости, а в расчетах KAMA коэффициент (CQ) определяет циклические параметры последнего двух равнолинейного скольжения, а именно: индексный весовой средний (DMA) (закрытие цены, коэффициенты), 2);
Несмотря на свою сложность, KAMA используется как обычная средняя линия. В практическом применении она не только позволяет определить движение рынка, но и определять точные точки купли-продажи.
Первый шаг: вычислить KAMAВ верхнем левом углу выберите язык программирования:My语言
В библиотеке talib уже есть готовый KAMA, но он имеет только один внешний параметр ((n) циклов, n1 и n2 уже по умолчанию 2 и 30. В данной статье стратегия используется только для прямого использования брошенных запятых, а более опытные партнеры также могут написать ха. Тогда в языке My также можно напрямую смешивать с языком JavaScript.
%% // My语言内JavaScript的标准格式
scope.KAMA = function() {
var r = _C(exchange.GetRecords); // 获取K线数组
if (r.length > 140) { // 过滤K线长度
var kama = talib.KAMA(r, 140); // 调用talib库计算KAMA
return kama[kama.length - 2]; // 返回KAMA的具体数值
}
return;
}
%% // My语言内JavaScript的标准格式
Шаг 2: Вычислить условия и заказать
%%
scope.KAMA = function() {
var r = _C(exchange.GetRecords);
if (r.length > 140) {
var kama = talib.KAMA(r, 140);
return kama[kama.length - 2];
}
return;
}
%%
K^^KAMA; // 把KAMA打印到图表上
A:CLOSE; // 把收盘价打印到图表上
K > REF(K, 1) && CLOSE > K,BK; // 开多
K < REF(K, 1) && CLOSE < K,SK; // 开空
K < REF(K, 1) || CLOSE < K,SP; // 平多
K > REF(K, 1) || CLOSE > K,BP; // 平空
Третий шаг: настройка фильтрации сигналов политики
%%
scope.KAMA = function() {
var r = _C(exchange.GetRecords);
if (r.length > 140) {
var kama = talib.KAMA(r, 140);
return kama[kama.length - 2];
}
return;
}
%%
K^^KAMA;
A:CLOSE;
K > REF(K, 1) && CLOSE > K,BK;
K < REF(K, 1) && CLOSE < K,SK;
K < REF(K, 1) || CLOSE < K,SP;
K > REF(K, 1) || CLOSE > K,BP;
AUTOFILTER; // 启用一开一平信号过滤机制
Чтобы приблизиться к реальному торговому окружению, мы использовали для стрессовых тестов сдвиги с двух рывков открытых позиций при обратном измерении, и тесты были выполнены следующим образом:
Тестные среды Доходы подробно Финансовая кривая
Если посмотреть на результаты отслеживания, то эта простая стратегия KAMA не выглядит очень оптимистично, даже в случае с супербольшим медвежьим рынком цифровых валют в 2018 году, когда кривая капитала не сильно отступила, а также в период длительного потрясения рынка, когда не было и не было нежелательных убытков.
Хорошая стратегия, которая может работать на реальном рынке, должна быть отработана, и в этой статье есть много возможностей для оптимизации, таких как увеличение определенных условий фильтрации, активные условия остановки и стоп-потери. Как одно из направлений, KAMA наследует обычные преимущества и недостатки, а также повышает цены. В неизменном рынке даже самый лучший параметр для фиксации параметров может быть трудно адаптироваться к будущим условиям, поэтому такой случайный, случайный способ изменения может быть лучшим вариантом.
xaifer48Боже, как написать код последнего этапа камы? KAMA = весомый показатель (движущийся средний) (закрытие цены, коэффициент), 2) вот это. Я проверил, что это написано как KAMA = предыдущий KAMA + коэффициент * (нынешняя цена - предыдущая KAMA).