Você está perdendo oportunidades de negociação:
- Aplicativos de negociação gratuitos
- 8 000+ sinais para cópia
- Notícias econômicas para análise dos mercados financeiros
Registro
Login
Você concorda com a política do site e com os termos de uso
Se você não tem uma conta, por favor registre-se
Meu argumento é que a integração da pitão com o MT5 não está completa. Você não pode obter valores indicadores DIRETAMENTE
Leitura de dados para python
Os objetivos do tópico são tão simples quanto cinco centavos: permitir que todos iniciem uma negociação algorítmica em Python, apenas copiando bits de código como inicializar a comunicação com o terminal, solicitar cotações, pedir ao servidor para abrir ou fechar uma negociação, etc., etc. Concentre-se apenas na lógica e em uma linguagem extremamente fácil de usar.
Certo... A lógica é exatamente o que falta para o comércio algorítmico - a lógica que você precisa para testar uma estratégia comercial antes de "todos os participantes" inserirem peças de código e entrarem no comércio real.
boa sorte com seus objetivos "não-míticos" de qualquer forma
)))
As pessoas que não precisam de preços salvos em arquivos reescreverão um pouco o código, e não "escrevem em arquivos - lêem de arquivos", mas apenas a estrutura de dados que eles querem. É em grande parte apenas uma vitrine de coisas primitivas, para aqueles dispostos a dar os primeiros passos.
Entretanto, aqueles já familiarizados com conceitos como listas, tuplos, dicionários, etc.
Proponho a leitura dos arquivos de preços com a função read_all_files_with_prices, que acionará a função read_file_with_prices para ler o arquivo de preços de cada instrumento.Deixe a função read_file_with_prices retornar ou array numpy.ndarray com linhas e colunas correspondentes ao arquivo de preços original (se os preços foram lidos com sucesso e verificados quanto à integridade dos dados, cada tipo de elemento é numpy.float64), ou string 'no data' se os dados não foram lidos ou estão incompletos .
Deixe a função read_all_files_with_prices devolver um dicionário com citações para todos os instrumentos. Suponha que as chaves neste dicionário são os nomes dos instrumentos, e os valores são os dicionários com citações de um instrumento correspondente. Nos dicionários com citações para um símbolo as chaves são data_hora, os valores são barras (barra de classe); além disso, sugiro fornecer chaves :
is_data': valor chave - Verdadeiro se houver uma citação, Falso - se a leitura do arquivo retornado 'sem dados',
instrumento": valor chave - instrumento (str);
preços": valor chave - matriz de preços por instrumento (numpy.ndarray)
Em resumo, esta é a estrutura de dados que eu sugiro:
O código Python é melhor colocado como screenshots do IDE/editor/site.
A falta de destaque local, pelo menos dos comentários de código, torna-o mal legível, ele se mistura com o texto principal.
Acrescentou funções para ler arquivos e criar a estrutura de dados acima:
O código Python é melhor colocado como screenshots do IDE/editor/site.
A falta de destaque local, pelo menos para comentários de código, torna-o mal legível, ele se mistura com o texto principal.
Mas pode ser copiado e aberto na IDE, mas a partir da imagem só pode ser digitado à mão...
O trabalho do programa mostrado acima:
Basicamente, quase tudo está pronto para começar a analisar dados e tomar e executar decisões comerciais.
Mas pode ser copiada e aberta na IDE, enquanto a imagem só pode ser digitada novamente à mão...
Acho que ninguém vai se dar ao trabalho de copiar e colar o código... ninguém precisa dele aqui
para ler e discutir, sim. Pegue algo curioso ou dê algumas dicas. E eu não acho que vou carregar isso na IDE. As pessoas publicam no fórum para leitura por outros e para usar o código ou anexá-lo ou vinculá-lo a um repositório (ou combiná-los).
Mas isto é uma distração.
Coloque o seguinte código no arquivo Functions.py, uma função que calcula o SMA
Preciso dos parâmetros d e k para realizar um deslocamento de tempo, não o ponto, vamos defini-los como zeros.
Vou inventar uma lógica simples e idiota, como:
para cada instrumento calculamos SMA com intervalo z=100 entre amostras, ou seja, SMA da ordem s=1+2*z=201.
Se não houver comércio no mercado ou sua quantidade (para um determinado símbolo) for inferior à quantidade admissível (separadamente para Vender e Comprar)
se o preço é atualmente 30 pips ou mais acima de SMA(201) - negócio de venda aberto com SL=TP=50 pips,
se o preço é atualmente 30 pips ou mais abaixo do SMA(201) - abrir uma operação de compra com SL=TP=50 pips.
Se a qualquer momento o lucro no comércio atingir 20 pips - feche-o sem esperar pelo fechamento por SL ou TP.
Vamos implementar tal comércio como um exemplo. Simples, bobo, do ponto de vista comercial, mas a essência do assunto é a implementação.
Sugiro tais funções para abrir e fechar negócios: