O recurso está a ser carregado... Carregamento...

Estratégias de negociação quantitativa para análise de dinâmica de preços com Python

Autora:Bem-estar, Criado: 2019-08-09 15:49:06, Atualizado: 2024-12-19 21:03:15

img

Introdução à estratégia de negociação de dinâmica de preços

A estratégia de negociação de volume analisa o contraste entre as forças do espaço-tempo através da relação entre o preço de abertura, o preço máximo e o preço mínimo em um determinado período, o que permite entender indiretamente a distribuição de forças dos dois lados do espaço-tempo no mercado atual.

A análise do dinamismo de preços tem uma grande quantidade de aplicações em listas manuais tradicionais, especialmente para determinar tendências unilaterais durante o dia.

Este artigo irá utilizar esta estratégia para desenvolver um programa de transação automática de caixa de moeda digital na rede de tokens.

Fórmulas para calcular a dinâmica dos preços

AR = soma de [N dias de todos os (High-Open) e / N dias de todos os (Open-Low) ] * 100

Entre eles:

  • N: Janela estatística do ciclo de tempo diário, geralmente de 30 dias por defeito, pois um mês tem aproximadamente 30 dias de negociação efetiva (transações de moedas digitais 24/7, talvez esse número seja um pouco conservador)

  • High: o preço mais alto de um dia

  • Open: preço de abertura do dia

  • Low: Preço mínimo por dia

Métodos de utilização da dinâmica de preços

A movimentação dos preços durante um período de tempo responde ao ponto entre o preço de abertura e o preço mais alto e o mais baixo, que é a base para determinar a força de tração de ambos os lados.

  • Suponhamos que este valor seja de cerca de 100, acima de 100, a força multi-cabeça começa a aumentar, abaixo de 100, a força vazia começa a se agrupar.
  • Quando o valor do AR aumenta, indica que o mercado está ativo, popular, muito alto, mas muito alto significa que o preço entrou na zona de supercompra, e deve ser escolhido um equilíbrio de tempo. Não há padrão específico para o alto do valor do AR. Em geral, quando o valor do AR sobe para cerca de 120, é provável que o preço volte para baixo.
  • A queda do valor do AR indica uma recessão do mercado, uma boa pressão no topo, que exige mais esforço, e um preço muito baixo sugere que o preço pode ter caído para a área de supervenda.

Observação: os números acima são valores padrão e não são constantes da verdade. No processo de negociação real, devemos ajustar o intervalo de acordo com as mudanças no mercado.

Estratégias de negociação de quantificação de dinâmica de preços em Python

A velha regra é que nós abrimos.FMZ.COMO Google Analytics é um aplicativo que permite que você acesse o Google Analytics, acesse a sua conta, clique no Centro de Controle, implante administradores e robôs.

Para mais informações sobre como implantar administradores e robôs, consulte meu artigo anterior:https://www.fmz.com/bbs-topic/4140

Os leitores que desejam comprar um administrador de instalação de servidores de nuvem podem consultar este artigo:https://www.fmz.com/bbs-topic/2848

Em seguida, clicamos na biblioteca de políticas no menu à esquerda e clicamos em criar uma nova política.

No canto superior direito da página de políticas de programação, lembre-se de escolher a linguagem de programação Python, como mostra:

img

Em seguida, nós escrevemos o código do Python na página de edição de código, o código abaixo, com uma notação muito detalhada para que você possa entender e perceber, o que é mais importante, embora esta estratégia tenha sido escrita com base em negociações de opções binárias, mas o lado expansivo do código abaixo também tem em conta negociações de futuros.

A partir daí, começamos a implementar essa estratégia, usando o bitcoin como token de negociação do token network:

import types # 导入Types模块库,这是为了应对代码中将要用到的各种数据类型
def main(): # 主函数,策略逻辑从这里开始
    IDLE = 0 # 用来标记持仓状态,可以理解为0即为空闲状态,也就是空仓状态
    LONG = 1 # 多头持仓
    SHORT = 2 # 空头持仓,注意,此策略应用于现货市场,所以不存在空头开仓或者持仓情况,这里这样写,是为了方便理解策略和以后的扩展(如扩展到期货市场)
    state = IDLE # 标记持仓状态的变量
    while True: # 进入循环
        r = exchange.GetRecords() #GetRecords是发明者量化平台的官方API,详细用法请参见:https://www.fmz.com/api
        if len(r) <= 1: # 判断K线是否大于一根,也就是当前是否为开盘状态,否则可能会进入死循环,这里也方便读者进行扩展,大一些的K线周期趋势状态更稳定。
           Log("bar的数量不足, 等待下一根bar...") # 输出日志
           continue # Python循环控制语句,继续下边的循环内容

        # 开始进行价格动量的量化分析
        ar = sum(r.High - r.Open) / sum(r.Open - r.Low) * 100 # 计算公式

        account = _C(exchange.GetAccount) # 获取账户信息,_C同样为发明者量化平台的官方API,用法请参见:https://www.fmz.com/api

        if ar < 95 and (state == IDLE or state == SHORT) :  # AR值小于超卖线且账户拥有资金,则全仓买入
           
           if account["Balance"] > 50:
                exchange.Buy(-1, account["Balance"] * 0.9) # 市价单全仓买入
                state = LONG # 改变持仓状态为LONG
                  
        elif ar > 80 and (state == IDLE or state == LONG):  # AR值大于超买线且账户有持仓,则全仓卖出
            
           if account["Stocks"] > 0.01:
                exchange.Sell(-1, account["Stocks"] * 0.9) # 市价单全仓卖出
                state = SHORT # 改变持仓状态为SHORT
                      
        LogStatus(_D(), exchange.GetAccount() , state) # 更新日志信息

Revisão estratégica

Após a redação da estratégia, a primeira coisa que fazemos é revisá-la para ver como ela se apresenta nos dados históricos, mas, por favor, note que os resultados da revisão não são iguais a previsões futuras, e a revisão serve apenas como uma informação de referência para considerar a eficácia da nossa estratégia. Uma vez que o mercado muda e a estratégia começa a ter grandes prejuízos, devemos identificar o problema em tempo hábil e mudar a estratégia para se adaptar ao novo ambiente do mercado, como o limite mencionado acima.

Clique em Revisão analógica na página de edição da política, na página de revisão, os parâmetros podem ser ajustados de acordo com as necessidades, para realizar uma decaimento fácil e rápido, especialmente para políticas lógicas complexas e com muitos parâmetros, sem precisar voltar ao código fonte e fazer modificações individuais.

Revisão de tempo: Selecionamos o último mês, clique em adicionar o token ao mercado de câmbio em tempo real, indicando o BTC.

img

Veja os resultados dos testes

img

Como você pode ver, essa estratégia tem se saído bem nos testes deste mês.

A vantagem e a desvantagem de uma estratégia de dinâmica de preços

  • Os benefícios

Em comparação com alguns outros indicadores técnicos tradicionais, a vantagem da dinâmica de preços é que ela não usa um único preço de abertura ou fechamento, mas introduz o preço mais alto e o preço mais baixo. Eles são comparados dinamicamente, através de flutuações de preços durante o dia, o que torna a informação do mercado mais completa, mais rápida e mais macroeconômica.

  • As desvantagens

Usar independentemente o valor do movimento do preço para determinar se o preço é muito alto ou baixo, para julgar o excesso / vazio, é muito provável que desça cedo em uma onda de grande tendência, ou desça cedo em uma onda de grande queda do mercado.

A definição do limiar da estratégia também precisa ser determinada pelas características do indicador de negociação. Os preços dos mercados de moeda digital são relativamente altos e o volume de negociação é enorme, especialmente em moedas tradicionais como o Bitcoin, e não há limites de queda e queda, portanto, o limiar é maior do que o mercado de ações tradicionais, 80 linhas de supervenda, geralmente difíceis de tocar, gerando menos sinais de compra; enquanto as linhas de supercompra 170 estão frequentemente abaixo do limiar, mas os sinais de venda são frequentemente desencadeados. Isso faz com que a estratégia seja em um estado de vazio durante a maior parte do tempo e a taxa de utilização de capital fique muito baixa.

Portanto, este mercado nunca teve uma estratégia de negociação de taça sagrada, que pode ser feita sem retrospecção, sem decaimento, para ganhar dinheiro para sempre. Nós, como os traders quantificados e os traders subjetivos, no final das contas, somos iguais, precisamos adaptar-nos às mudanças do mercado, adaptar-nos às condições locais, adaptar-nos a todas as mudanças, quando encontramos uma estratégia ineficaz, precisamos ajustar em tempo hábil.

Os amigos com problemas podem vir.https://www.fmz.com/bbsA plataforma de quantificação de inventores tem profissionais disponíveis para responder a qualquer pergunta, seja sobre estratégia ou tecnologia da plataforma.


Relacionados

Mais.

O MAIKEOMuitos benefícios, obrigado!