Sistema de negociação de moeda digital adaptável e software de negociação quantitativa baseado no inventor do algoritmo KAMA

Autora: , Criado: 2019-07-06 16:21:15, Atualizado: 2023-10-24 21:42:44

[TOC]

img

Adaptação à linha média KAMA

Como o nome sugere, a média de adaptação (KAMA) pertence à categoria de média móvel (Moving Average), mas não é tão inteligente quanto a média móvel tradicional. Sabemos que a média normal tem muitas desvantagens, como: a média curta está próxima do movimento dos preços, é muito sensível, mas é fácil de gerar falsos sinais; a média de longo prazo é muito precisa no julgamento da tendência, mas muitas vezes o mercado já passou um período e só reage.

A inteligência da KAMA é que ela pode ajustar a sensibilidade principal de acordo com o estado atual do mercado, ou seja, a taxa de volatilidade. Sua forma de manifestação é: em mercados turbulentos, a mudança da KAMA diminui significativamente; quando a tendência surge, ela reage rapidamente.

KAMA no gráfico

img

Método de cálculo do KAMA

  • Direção ((DIR) = preço de fechamento - preço de fechamento n dias antes
  • Taxa de flutuação (VIR) = sum (abs) (preço de fechamento - preço de fechamento do dia anterior), n)
  • Eficiência (ER) = direção / taxa de flutuação
  • Então, o que é a velocidade é igual a 2 / (n1 + 1)
  • A velocidade mais lenta é igual a 2 / (n2 + 1)
  • A velocidade do motor é igual à velocidade do motor. A velocidade do motor é igual à velocidade do motor.
  • Coeficiente (CQ) = liso * liso
  • KAMA = média ponderada por índice (média móvel dinâmica) (preço de fechamento, coeficiente), 2)

Dentre eles, n, n1 e n2 são os parâmetros de ciclo, em que o número de períodos n é 10, n1 é o número de períodos de curto prazo e n2 é o número de períodos de longo prazo 30. Este também é um conjunto de parâmetros identificados pelo autor Perry Kaufman, da KAMA.

O método de cálculo do KAMA é: primeiro calcular a direção (DIR) e a volatilidade (VIR), e depois calcular a eficiência em proporção a ambos. A eficiência (ER) é a medida da variação do preço, e o cálculo é simples: direção / volatilidade. O resultado é entre 0 e 1, quando o valor do ER é mais próximo de 0 indica que o mercado está em um estado de turbulência, quando o valor do ER é mais próximo de 1 indica que o mercado está em um estado de tendência.

Quando se calcula a eficiência (ER), pode-se combinar a média rápida e a média lenta para derivar a constante plana (CS): eficiência * (rápida - lenta) + velocidade lenta.

Em seguida, é calculado um coeficiente (CQ) com base nos múltiplos do plano, com o objetivo de fazer com que os parâmetros de ciclo lento desempenhem um papel mais importante no cálculo, uma prática mais conservadora. O grau de suavidade final do KAMA é determinado pelo coeficiente (CQ), que no cálculo do KAMA determina os parâmetros de ciclo dos dois últimos parâmetros de suavidade horizontal, ou seja, a média exponencial ponderada (média móvel dinâmica), o preço de fechamento, o coeficiente, e 2);

Como usar o KAMA

Embora o método de cálculo do KAMA seja muito complexo, o método de uso é semelhante ao da linha média comum, e em aplicações práticas, ele não só pode determinar a tendência do mercado, mas também pode ser usado para determinar pontos de venda precisos. Como é muito inteligente, pode ser usado em muitas estratégias de negociação, e até mesmo em moedas digitais.

  • Quando o preço é maior que o KAMA e o KAMA é superior, a posição é aberta.
  • Quando o preço é menor que o KAMA e o KAMA está em baixa, o vazio é aberto.
  • Quando o preço é menor do que o KAMA, ou quando o KAMA é descendente, o multi-head equaciona.
  • Quando o preço é maior do que o KAMA, ou acima do KAMA, o Blankhead estabiliza.

Construir estratégias de negociação baseadas no KAMA

Primeiro passo: calcular KAMAAtenção! No canto superior esquerdo, selecione a linguagem:My语言O KAMA já está disponível na biblioteca talib, mas tem apenas um parâmetro externo ((n) ciclo, n1 e n2 já são 2 e 30 por defeito. A estratégia neste artigo é apenas para jogar as cartas de barras diretamente, e os parceiros mais experientes também podem escrever seu próprio haha. Então, na linguagem My, também pode ser misturado diretamente com a linguagem JavaScript, note o código abaixo:

%%  // 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的标准格式

Segundo passo: calcular as condições do negócio e fazer o pedido

%%
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;  // 平空

Passo 3: Configure a filtragem de sinais estratégicos

%%
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;  // 启用一开一平信号过滤机制

Revisão estratégica

Para nos aproximarmos mais do ambiente de negociação real, usamos o slider de 2 saltos de posições abertas para testar a pressão no retraso, testando o ambiente da seguinte forma:

  • Ações: BitMEX
  • O que é o XBTUSD?
  • Tipo de transação: XBTUSD
  • Tempo: 01 de julho de 2017 - 01 de julho de 2019
  • Ciclo da linha K: linha do dia
  • Ponto de deslizamento: 2 saltos de equilíbrio

Ambiente de teste img Benefícios detalhados img Curva de financiamento img

A partir dos resultados do retrospecto acima, a estratégia simples de KAMA não é muito promissora, mesmo no mercado de ursos super-grandes de 2018, onde a curva de capital não registrou um grande recuo e não se estabilizou durante um período de convulsão prolongada do mercado, causando perdas desnecessárias.

Código de origem da estratégia

Clique para copiar o código-fonte da estratégia completa, baseada na linguagem My, para commodity futures e moedas digitais

Resumo

Uma boa estratégia para o mercado real deve ter sido refinada, e há muito espaço para melhorias, como o aumento de certas condições de filtragem, condições de stop-loss ativas, etc. Como uma espécie de linha uniforme, a KAMA herdou as vantagens e desvantagens da linha uniforme comum e, ao mesmo tempo, elevou-se. Em um mercado onde as mudanças são imprevisíveis, é difícil adaptar-se ao mercado futuro, portanto, essa abordagem aleatória e aleatória de mudanças no mercado pode ser uma escolha melhor.


Relacionados

Mais.

xaifer48Meu Deus, por favor, como escrever o código do último passo de Kama? KAMA = média ponderada do índice (média móvel dinâmica) (preço de fechamento, coeficiente), 2) é isso. Eu pesquisei e disse que era escrito como KAMA = anterior KAMA + coeficiente * (preço atual - anterior KAMA).