Estratégia de opções azuis
10 Opções Estratégias para saber.
10 Opções Estratégias para saber.
Muitas vezes, os comerciantes saltam no jogo de opções com pouca ou nenhuma compreensão de quantas estratégias de opções estão disponíveis para limitar seus riscos e maximizar o retorno. Com um pouco de esforço, no entanto, os comerciantes podem aprender a aproveitar a flexibilidade e o poder total das opções como veículo de negociação. Com isso em mente, reunimos esta apresentação de slides, que esperamos reduzir a curva de aprendizado e apontar você na direção certa.
10 Opções Estratégias para saber.
Muitas vezes, os comerciantes saltam no jogo de opções com pouca ou nenhuma compreensão de quantas estratégias de opções estão disponíveis para limitar seus riscos e maximizar o retorno. Com um pouco de esforço, no entanto, os comerciantes podem aprender a aproveitar a flexibilidade e o poder total das opções como veículo de negociação. Com isso em mente, reunimos esta apresentação de slides, que esperamos reduzir a curva de aprendizado e apontar você na direção certa.
1. Chamada coberta.
Além de comprar uma opção de chamada nua, você também pode se envolver em uma chamada coberta básica ou estratégia de compra e gravação. Nesta estratégia, você compraria os ativos de forma direta e, simultaneamente, escreveria (ou venderia) uma opção de compra sobre esses mesmos ativos. Seu volume de ativos de propriedade deve ser equivalente ao número de ativos subjacente à opção de compra. Os investidores costumam usar essa posição quando tiverem uma posição de curto prazo e uma opinião neutra sobre os ativos e buscam gerar lucros adicionais (através do recebimento do prêmio de chamada) ou proteger contra uma potencial queda no valor do ativo subjacente. (Para mais informações, leia Estratégias de chamada coberta para um mercado em queda.)
2. Married Put.
Em uma estratégia de colocação casada, um investidor que compra (ou atualmente possui) um ativo particular (como ações), compra simultaneamente uma opção de venda para um número equivalente de ações. Os investidores usarão essa estratégia quando tiverem alta no preço do imobilizado e desejam se proteger contra potenciais perdas a curto prazo. Esta estratégia funciona essencialmente como uma apólice de seguro, e estabelece um piso se o preço do activo mergulhar dramaticamente. (Para obter mais informações sobre como usar essa estratégia, consulte Married Puts: A Relação de Proteção.)
3. Spread Call Broad.
Em uma estratégia de propagação de chamadas de touro, um investidor irá simultaneamente comprar opções de compra a um preço de exercício específico e vender o mesmo número de chamadas a um preço de exercício mais alto. Ambas as opções de compra terão o mesmo mês de vencimento e ativo subjacente. Este tipo de estratégia de spread vertical é freqüentemente usado quando um investidor é otimista e espera um aumento moderado no preço do ativo subjacente. (Para saber mais, leia os Spreads de crédito Vertical Bull e Bear.)
4. Bear Put Spread.
O urso colocar estratégia de propagação é uma outra forma de propagação vertical, como a propagação da chamada de touro. Nesta estratégia, o investidor irá simultaneamente comprar opções de venda a um preço de exercício específico e vender o mesmo número de posições a um preço de exercício menor. Ambas as opções seriam para o mesmo ativo subjacente e têm a mesma data de vencimento. Este método é usado quando o comerciante é descendente e espera que o preço do ativo subjacente diminua. Oferece ganhos limitados e perdas limitadas. (Para mais informações sobre esta estratégia, leia Bear Put Spreads: uma alternativa rujir para venda a descoberto.)
Investopedia Academy "Opções para iniciantes"
Agora que você aprendeu algumas estratégias de opções diferentes, se estiver pronto para dar o próximo passo e aprender:
Melhore a flexibilidade em seu portfólio adicionando opções Abordagem Chamadas como pagamentos pendentes, e Coloca como seguro Interprete as datas de validade e distingue o valor intrínseco do valor do tempo. Calcule os breakevens e a gestão de riscos Explore conceitos avançados, tais como spreads, straddles e strangles.
5. Colar Protetor.
Uma estratégia de colar de proteção é realizada pela compra de uma opção de venda fora do dinheiro e na escrita de uma opção de compra fora do dinheiro ao mesmo tempo, para o mesmo objeto subjacente (como ações). Esta estratégia é frequentemente utilizada pelos investidores depois de uma posição longa em um estoque ter experimentado ganhos substanciais. Desta forma, os investidores podem bloquear lucros sem vender suas ações. (Para mais informações sobre esses tipos de estratégias, consulte Não esquecer seu colar de proteção e como funciona um colar de proteção.)
6. Long Straddle.
Uma estratégia de opções longas de straddle é quando um investidor compra uma opção de chamada e venda com o mesmo preço de exercício, o ativo subjacente e a data de validade simultaneamente. Um investidor geralmente usará essa estratégia quando acreditar que o preço do ativo subjacente se moverá de forma significativa, mas não tem certeza de qual direção o movimento irá demorar. Essa estratégia permite ao investidor manter ganhos ilimitados, enquanto a perda é limitada ao custo de ambos os contratos de opções. (Para mais, leia Straddle Strategy A Simple Approach to Neutral de mercado.)
7. Long Strang.
Em uma estratégia de opções de estrangulamento longo, o investidor compra uma opção de compra e oferta com o mesmo vencimento e ativos subjacentes, mas com preços de exercício diferentes. O preço de exercício da tabela normalmente será inferior ao preço de exercício da opção de compra, e ambas as opções estarão fora do dinheiro. Um investidor que usa essa estratégia acredita que o preço do recurso subjacente experimentará um grande movimento, mas não tem certeza de qual direção o movimento irá demorar. As perdas são limitadas aos custos de ambas as opções; estrangulamentos normalmente serão menos caros do que os straddles porque as opções são compradas fora do dinheiro. (Para mais, veja Obter uma forte retenção no lucro com Strangles.)
8. Spread Borboleta.
Todas as estratégias até este ponto exigiram uma combinação de duas posições ou contratos diferentes. Em uma estratégia de opções de propagação de borboleta, um investidor irá combinar uma estratégia de spread de touro e uma estratégia de spread de urso e usar três preços de exercício diferentes. Por exemplo, um tipo de propagação de borboleta envolve a compra de uma opção de chamada (colocada) no preço de ataque mais baixo (mais alto), enquanto vende duas opções de compra (colocadas) em um preço de ataque mais alto (mais baixo) e, em seguida, uma última chamada (colocar) opção em um preço de exercício ainda maior (menor). (Para mais informações sobre esta estratégia, leia Configurando Traps de lucro com Butterfly Spreads.)
9. Condor de ferro.
Uma estratégia ainda mais interessante é o condor de ferro. Nesta estratégia, o investidor detém simultaneamente uma posição longa e curta em duas estratégias estrangeiras diferentes. O condor de ferro é uma estratégia bastante complexa que definitivamente requer tempo para aprender, e pratica dominar. (Recomendamos ler mais sobre esta estratégia em Take Flight With A Iron Condor, você deve rebarrar para Iron Condors? E tente a estratégia para si mesmo (sem risco!) Usando o Simulador Investopedia.)
10. Borboleta de ferro.
A estratégia de opções finais que demonstraremos aqui é a borboleta de ferro. Nesta estratégia, um investidor irá combinar uma estrada longa ou curta com a compra ou venda simultânea de um estrangulamento. Embora semelhante a uma propagação de borboletas, esta estratégia difere porque usa chamadas e colocações, em oposição a uma ou outra. Os lucros e perdas são ambos limitados dentro de um intervalo específico, dependendo dos preços de exercício das opções usadas. Os investidores costumam usar opções fora do dinheiro em um esforço para cortar custos e, ao mesmo tempo, limitar o risco. (Para saber mais, leia o que é uma estratégia de opção de borboleta de ferro?)
Opção Straddle (Long Straddle)
O longo straddle, também conhecido como buy straddle ou simplesmente "straddle", é uma estratégia neutra na negociação de opções que envolve a compra simultânea de um put e uma chamada da mesma ação subjacente, preço de referência e data de vencimento.
As opções de straddle longo são lucro ilimitado, estratégias de negociação de opções de risco limitadas que são usadas quando o trader de opções pensa que os títulos subjacentes terão uma volatilidade significativa no curto prazo.
Potencial ilimitado de lucro.
Ao ter posições compradas tanto nas opções de compra quanto de venda, as mesas podem alcançar grandes lucros, não importando o rumo que o preço das ações subjacentes siga, desde que o movimento seja forte o suficiente.
A fórmula para calcular o lucro é dada abaixo:
Lucro Máximo = Lucro Ilimitado Alcançado Quando Preço Subjacente> Preço de Exercício da Longa Chamada + Prêmio Líquido Pago OU Preço do Patrimônio O Guia de Opções.
Estratégias neutras.
Estratégias de opções.
Opções Estratégia Finder.
Aviso de Risco: as ações, futuros e negociação de opções binárias discutidas neste site podem ser consideradas Operações de Negociação de Alto Risco e sua execução pode ser muito arriscada e pode resultar em perdas significativas ou mesmo em uma perda total de todos os fundos em sua conta. Você não deve arriscar mais do que você pode perder. Antes de decidir comercializar, você precisa garantir que compreenda os riscos envolvidos levando em consideração seus objetivos de investimento e nível de experiência. As informações contidas neste site são fornecidas apenas para fins informativos e educacionais e não se destinam a ser um serviço de recomendação comercial. TheOptionsGuide não será responsável por erros, omissões ou atrasos no conteúdo, ou por quaisquer ações tomadas com base nisso.
Os produtos financeiros oferecidos pela empresa possuem alto nível de risco e podem resultar na perda de todos os seus fundos. Você nunca deve investir dinheiro que não pode perder.
Estratégia de opções azuis
"Rolling and Recovery" é uma estratégia inteligente que os operadores de opções profissionais praticam diariamente e é uma parte importante de qualquer estratégia de venda de opções. Nós fazemos chamadas ou colocamos para proteger o capital, ampliar posições e quando queremos ficar em uma ação existente ou ETF. Este vídeo ensina as táticas da minha estratégia de "Rolling and Recovery", que ajudaram a alcançar nossa taxa de vitórias ridícula de 98% desde 2011!
Vídeo Bônus # 2: O Comércio de Dividendo Turbo-cobrado.
Neste Vídeo Especial, você aprenderá a negociar em torno de datas ex-dividendos de ações de alto rendimento e DUPLICAR SUA PRODUÇÃO DE DIVIDENDOS. Essas oportunidades regulares e conhecidas com datas ex-dividendo são MUITO FÁCIL de passar despercebidas. Esta estratégia permite coletar um "DIVIDENDO DUPLO" com muito pouco risco e deve ser uma parte da caixa de ferramentas de cada investidor de renda!
Vídeo Bônus # 3: O Cheque de Pagamento Semanal.
Você também terá acesso imediato ao Curso de treinamento de pagamento semanal em profundidade de Michael Schulman, no qual aprenderá a estratégia completa "Paycheck semanal" para obter um dia de pagamento extra todas as sextas-feiras com apenas 30 minutos por semana!
RELATÓRIO DE BÔNUS LIVRE # 1: Tornando-se um profissional de venda de Put.
A compra de ações individuais pode ficar cara, especialmente com uma conta de negociação menor. Ou talvez você tenha sido queimado com tanta frequência por ações que voam alto e caem forte que você quer ficar longe da propriedade. Vender opções de venda, semana após semana ou mês após mês para renda pura, é a maneira como os "profissionais" jogam ações que eles não se importariam em ter, mas preferem receber o pagamento do que distribuir uma grande quantia de troco. Este relatório dá ótimas dicas para transações de baixo custo e lucro.
RELATÓRIO BÔNUS LIVRE # 2: 3 Segredos para Gerar Renda com Opções de Chamada.
Você pode ser o mais familiarizado com a estratégia de compra de opções, mas esse não é o melhor uso do seu capital se você quiser obter retornos consistentes. Você pode ter considerado vender chamadas cobertas - vendendo opções de compra contra ações em sua carteira - para renda e proteção. E há uma razão pela qual essa estratégia "STOCK-FRIENDLY" funciona. De fato, existem 3 RAZÕES. Adquira-os agora neste relatório e você verá por que conhecer os pontos mais sutis dessa estratégia simples pode preencher seu portfólio.
RELATÓRIO DE BÔNUS LIVRE # 3: O Novo Buzz: Negociando Opções Semanais por Renda.
Com ações de alto crescimento que podem movimentar-se muito em um mês, mas comercializar regularmente de semana a semana, os investidores em renda como você podem explorar a solução OPÇÕES SEMANAIS voltada para retornos bancários rápidos e eliminando o risco do tempo. Neste relatório especial, mostraremos como você pode vender opções semanais para gerar um "pagamento extra" toda sexta-feira.
RELATÓRIO DE BÔNUS LIVRE # 4: Relatório de vencedores de salário semanal instantâneo.
As opções semanais são ideais para gerar renda em dinheiro toda semana. Então, o que parece bom agora? Neste relatório estão alguns dos meus melhores ganhadores de salário semanal instantâneo para negociar opções semanais.
RELATÓRIO DE BÔNUS LIVRE # 5: Blueprint instantâneo do dinheiro.
Opções simples VENDENDO Estratégias que instantaneamente geram fluxo de caixa em sua conta mês após mês. Aqui está a versão PDF grátis do plano Instant Blue Plan.
RELATÓRIO DE BÔNUS LIVRE # 6: Guia de Referência: Opções de negociação Terminlogy.
Este é o seu Guia de Referência para a terminologia de negociação de renda de opções que será usada com este programa. Sinta-se à vontade para consultar este documento sempre que tiver dúvidas sobre uma frase ou termo usado no Plano que não pareça familiar ou precise de esclarecimentos.
A maior comunidade comercial de tecnologia do mundo!
&cópia de; Copyright Neuchatel Ltd - Todos os direitos reservados.
Aviso de Risco: A negociação de Opções Binárias ou FX pode não ser adequada para todos os investidores, já que carrega um alto grau de risco ao seu capital. Negociar esses produtos é arriscado e você pode perder todo o seu investimento. O desempenho passado não é indicativo de resultados futuros. Baixas taxas de preenchimento, prazos de vencimento, volatilidade do mercado e erros de plataforma podem resultar na perda de negociações. Antes de decidir investir em opções binárias, você deve considerar cuidadosamente seus objetivos de investimento, nível de experiência e apetite de risco. Você deve estar ciente de todos os riscos associados à troca de opções de câmbio e opções binárias e procurar orientação de um consultor financeiro independente se tiver alguma dúvida.
Você será redirecionado para o paypal, onde será cobrada uma taxa de US $ 0,01 para a primeira semana, a fim de verificar se você tem uma conta válida no paypal.
Você pode optar por cancelar sua assinatura a qualquer momento durante a primeira semana, e NENHUM PAGAMENTO ADICIONAL será cobrado em sua conta paypal.
Estratégia de opções azuis
As opções semanais tornaram-se um ponto forte entre os operadores de opções. Infelizmente, mas previsível, a maioria dos traders os utiliza para pura especulação.
Mas isso está certo.
Como a maioria de vocês sabem, lido principalmente com estratégias de venda de opções de alta probabilidade. Então, o benefício de ter um novo e crescente mercado de especuladores é que temos a capacidade de levar o outro lado do seu comércio. Eu gosto de usar a analogia do cassino. Os especuladores (compradores de opções) são os jogadores e nós (vendedores de opções) são o cassino. E como todos sabem, a longo prazo, o cassino sempre vence.
Por quê? ... porque as probabilidades estão esmagadoramente do nosso lado.
Até agora, minha abordagem estatística às opções semanais funcionou bem. Eu introduzi uma nova carteira (atualmente temos 4) para assinantes da Options Advantage no final de fevereiro e até agora o retorno sobre o capital foi ligeiramente superior a 25%.
Tenho certeza de que alguns de vocês podem estar perguntando quais são as opções semanais. Bem, em 2005, o Chicago Board Options Exchange introduziu "semanas" para o público. Mas, como você pode ver no gráfico acima, não foi até 2009 que o volume do produto em expansão decolou. Agora, por semana, tornou-se um dos produtos comerciais mais populares que o mercado tem para oferecer.
Então, como eu uso opções semanais?
Eu começo definindo minha cesta de ações. Felizmente, a pesquisa não leva muito tempo, considerando que as semanas são limitadas aos produtos mais líquidos, como SPY, QQQ, DIA e afins.
A minha preferência é usar o S & amp; P 500 ETF, SPY. É um produto altamente líquido e estou completamente confortável com o risco / retorno oferecido pela SPY. Mais importante, eu não estou exposto à volatilidade causada por imprevistos imprevistos que podem ser prejudiciais ao preço de uma ação individual e, por sua vez, a minha posição de opções.
Uma vez que eu decidiu no meu subjacente, no meu caso SPY, eu começo a tomar as mesmas providências que eu uso ao vender opções mensais.
Eu monitora diariamente a leitura do SPY de sobrecompra / sobrevenda usando um simples indicador conhecido como RSI. E eu usá-lo ao longo de vários prazos (2), (3) e (5). Isso me dá uma imagem mais precisa quanto ao excesso ou sobrevoque da SPY durante o curto prazo.
Em termos simples, o RSI mede o quanto é sobrecomprado ou sobrevendido de uma ação ou ETF diariamente. Uma leitura acima de 80 significa que o ativo está sobrecomprado, abaixo de 20 significa que o ativo está sobrevendido.
Mais uma vez, vejo o RSI diariamente e espere pacientemente que o SPY se mova para um estado de overbought / sobrevoo extremo.
Uma vez que uma leitura extrema atinge eu faço uma troca.
Deve-se ressaltar que apenas porque as opções que uso são chamadas Weeklys, não significa que as troque semanalmente. Assim como minhas outras estratégias de alta probabilidade, só farei negócios que façam sentido. Como sempre, eu permitirei que os negócios viessem até mim e não forçam um comércio apenas por fazer um comércio. Eu sei que isso pode parecer óbvio, mas outros serviços oferecem trades porque prometem uma quantidade específica de negócios semanalmente ou mensalmente. Isso não faz sentido, nem é uma abordagem sustentável e mais importante, rentável.
Ok, então, diga que SPY empurra um estado de sobrecompra como a ETF no dia 2 de abril.
Uma vez, vemos uma confirmação de que ocorreu uma leitura extrema que queremos enfraquecer a atual tendência de curto prazo, porque a história nos diz quando um extremo de curto prazo atinge um alívio de curto prazo está ao virar da esquina.
No nosso caso, usaríamos um spread de chamada de urso. Um spread de chamada de urso funciona melhor quando o mercado se move mais baixo, mas também funciona em um mercado plano a ligeiramente maior.
E é aí que a analogia do cassino realmente entra em jogo.
Lembre-se, a maioria dos comerciantes que usam semanalmente são especuladores que visam as cercas. Eles querem fazer um pequeno investimento e fazer retornos exponenciais.
Dê uma olhada na cadeia de opções abaixo.
Quero me concentrar nas porcentagens na coluna da extrema esquerda.
Sabendo que o SPY está atualmente sendo negociado por aproximadamente US $ 182, posso vender opções com uma probabilidade de sucesso superior a 85% e trazer um retorno de 6,9%. Se eu diminuir minha probabilidade de sucesso, posso aumentar ainda mais o prêmio, aumentando assim meu retorno. Isso realmente depende de quanto risco você está disposto a assumir. Eu prefiro 80% ou acima.
Faça a greve em 14 de abril de 187. Tem uma probabilidade de sucesso (Prob. OTM) de 85,97%. Essas são chances incríveis quando você considera que o especulador (o jogador) tem menos de 15% de chance de sucesso. É um conceito simples que, por algum motivo, muitos investidores não conhecem.
Um sistema simples para ganhar quase 9-out-of 10 ofícios.
Investidores regulares sonham com esses tipos de oportunidades - mas poucos acreditam que sejam reais. Como os dragões, a idéia de ganhar dinheiro em quase 9-out-10 comércios parece coisa de lenda ou, se real, reservada exclusivamente para os comerciantes mais espertos do mercado. No entanto, é muito real. E facilmente ao alcance de investidores regulares. Você pode aprender tudo sobre essa estratégia segura e simples - e os próximos três trades se formando agora - clicando neste link aqui. Mate seu próprio dragão - Vá aqui agora.
Como construir e testar uma estratégia de opções binárias com o testador de estratégia do MetaTrader 4.
Índice.
Este artigo mostra como criar uma estratégia de Opções Binárias e testá-la no Strategy-Tester do Metatrader 4 com o utilitário Binary-Options-Strategy-Tester. Por padrão, o Strategy-Tester do Metatrader 4 pode testar Expert Advisors e Indicadores em relação a dados históricos, mas não pode manipular Opções Binárias com tempos de expiração. Como eu preciso da possibilidade de testar estratégias de Opções Binárias automatizadas no Strategy-Tester do MetaTrader 4, o Binary-Options-Strategy-Tester foi construído como um utilitário para atender a essas necessidades.
O conceito contém as seguintes partes:
Este é um exemplo passo a passo de como construir uma estratégia de Opções Binárias armazenada em um Indicador (marcado como vermelho na imagem acima) para se comunicar através da Biblioteca de Estratégia de Opções Binárias (marcada como verde na imagem acima) com as Opções Binárias. Strategy-Tester (marcado como azul na imagem acima), para colocar pedidos virtuais e contar seus resultados com backtests e forward tests.
Lembre-se: o backtesting com dados históricos nunca representará o futuro real, mas pode fornecer um valor aproximado para que sua estratégia fique mais estável.
A qualidade do seu backtest depende dos seus dados históricos. Portanto, é altamente recomendável usar um conjunto de dados de alta qualidade!
Faça o download e compre o utilitário Binary-Options-Strategy-Tester no marketplace:
Test-Framework para testar estratégias de Opções Binárias no Strategy-Tester do MetaTrader 4.
Por que uma versão comprada do utilitário Binary-Options-Strategy-Tester é necessária?
Uma estratégia de opções binárias tem que chamar uma função do Binary-Options-Strategy-Tester (via Binary-Options-Strategy-Library) para colocar os negócios virtuais. Relacionado ao conceito de licença do MQL4, isso só funciona se o produto tiver uma licença válida. Portanto, você precisa comprar o produto para testar as estratégias de Opções Binárias ou este exemplo.
Baixe gratuitamente o BinaryOptionsStrategyLibrary. mqh e coloque-o na pasta \ Include ([caminho para o seu MetaTrader 4] \ MQL4 \ Include):
A biblioteca gratuita fornecerá várias funções para criar sua estratégia de Opções Binárias facilmente e para se comunicar com o Binary-Options-Strategy-Tester. Veja Binary-Options-Strategy-Library para mais detalhes da biblioteca.
Faça o download do indicador KVO. mq4 e coloque-o (e o arquivo compilado KVO. ex4) na pasta \ Indicators \ Downloads ([caminho para seu MetaTrader 4] \ MQL4 \ Indicators \ Downloads):
O indicador KVO é usado como um exemplo para mostrar o acesso de indicadores externos e arquivos ex4 na seção "3.2.6 Uso de indicadores externos (arquivos ex4)". Veja mql5 / en / code / 8677 para mais detalhes do indicador.
Agora você pode ir mais longe com a seção "3. Exemplo de estratégia de opções binárias" e criar o código de exemplo sozinho ou apenas fazer o download do código deste exemplo abaixo.
Faça o download opcional de BinaryOptionsStrategyExample. mq4 e coloque-o (e o arquivo compilado BinaryOptionsStrategyExample. ex4) em folder \ Indicators ([caminho para seu MetaTrader 4] \ MQL4 \ Indicators):
Faça o download do código desse exemplo de estratégia de opções binárias para deixá-lo rodar sem construí-lo sozinho.
Para compilar os arquivos. ex4 necessários, abra os arquivos. mq4 (KVO. mq4 e BinaryOptionsStrategyExample. mq4 - NÃO Binário-Opções-Estratégia-Biblioteca. mqh) no MetaQuotes Language Editor e clique no botão "Compile" ou apenas reinicie o seu MetaTrader 4 após esses arquivos são armazenados nas pastas descritas e o MetaTrader 4 fará isso automaticamente para você.
3. Exemplo de estratégia de opções binárias.
As etapas a seguir guiarão você por meio de um exemplo de como criar um exemplo de estratégia de Opções Binárias armazenada em um Indicador para se comunicar com o Binary-Options-Strategy-Tester. Você pode construí-lo sozinho ou apenas baixar o código do BinaryOptionsStrategyExample. mq4.
Por favor note: Esta estratégia não é uma estratégia de opções binárias rentável! É apenas um exemplo de como construir uma estratégia em um indicador para se comunicar com o utilitário Binary-Options-Strategy-Tester. Claro que você tem que construir uma estratégia lucrativa por conta própria. Mas, como você verá, esse utilitário ajudará você a testar e melhorar sua estratégia de Opções Binárias.
3.1 Definir estratégia de opções binárias.
Primeiramente, temos que definir a estratégia e os valores variáveis (parâmetros de entrada). A documentação do MQL4 mostra todos os indicadores técnicos, que podem ser endereçados através da interface iCustom: docs. mql4 / indicators.
Digamos que gostamos de criar uma estratégia cruzada de média móvel simples com uma média móvel "rápida" e outra "lenta" para trocar na próxima vela depois que elas se cruzarem. A documentação informa como podemos obter o valor de uma única média móvel: docs. mql4 / indicators / ima.
Vamos dizer ainda, nós gostamos de escolher valores para "período médio MA" (rápido e lento) e para "preço aplicado", bem como para o "método de média". Outros valores (como símbolo, período e turno) dependem do testcase (por exemplo, o símbolo em que o testador é executado) e devem ser configurados automaticamente. Portanto, basicamente, precisamos das seguintes variáveis para uma média móvel:
Como precisamos de duas Médias Móveis para verificar seus cruzamentos, precisamos dos seguintes parâmetros de entrada para o exemplo de estratégia com alguns valores padrão:
int period_slow = 10;
int method_both = 0;
int applied_price_both = 0;
3.2 Criar estratégia de opções binárias.
Você precisa criar um indicador que armazene sua estratégia de Opções Binárias para arrastá-la no gráfico onde o Binary-Options-Strategy-Tester está sendo executado.
Abra o MetaQuotes Language Editor (no MetaTrader 4 clique em "Tools" - & gt; "MetaQuotes Language Editor" ou simplesmente pressione F4) e clique em "New":
O Assistente MQL será exibido. Selecione "Custom Indicator" para criar um indicador vazio e clique em "Next":
Digite o nome, direitos autorais e link da estratégia, bem como os parâmetros de entrada com seus tipos e valores padrão (valores iniciais), clicando em "Adicionar" - Botão e pressione "Next":
Em manipuladores de eventos de abas, selecione a opção "OnCalculate", pois precisamos deste evento para verificar a nossa estratégia em cada tick. Pressione "Próximo":
Nas propriedades do desenho da aba, marque a caixa de seleção "Indicador na janela separada", pois precisamos de uma janela separada para imprimir os valores de depuração. Pressione "Concluir":
O código inicial do seu indicador será exibido:
// | Copyright 2016, __martin__ |
#property copyright "Copyright 2016, __martin__"
#property link "mql5 / pt / users / __ martin__"
#property version "1.00"
entrada int period_fast = 5;
entrada int period_slow = 10;
input int method_both = 0;
input int applied_price_both = 0;
// | Função de inicialização do indicador personalizado |
// --- mapeamento de buffers de indicador.
// | Função de iteração do indicador personalizado |
int OnCalculate (const int rates_total,
const int prev_calculated,
const datetime & amp; time [],
const duplo & aberto [],
const double & amp; alta [],
const double & amp; low [],
const double & amp; close [],
const long & amp; tick_volume [],
Const long & amp; volume [],
const int & amp; spread [])
3.2.1 Parâmetros de entrada.
Os parâmetros de entrada iniciais são criados com o Assistente MQL (consulte 3.2 Criar estratégia de opções binárias) e os aprimoraremos com as etapas a seguir.
Para evitar ter que inserir int-values para o preço aplicado e método de média das médias móveis para parâmetros de entrada, o tipo para method_both e applied_price_both é alterado de int para o tipo de enumeração com um valor padrão.
Além disso, comentários para os parâmetros de entrada são incluídos para mostrar os comentários como rótulos, em vez de nomes de variáveis:
entrada int period_fast = 5; // valor MA rápido.
entrada int period_slow = 10; // Valor MA lento.
entrada ENUM_MA_METHOD method_both = MODE_SMA; // método MA.
entrada ENUM_APPLIED_PRICE applied_price_both = PRICE_CLOSE; // MA preço aplicado.
Com essas modificações, os parâmetros de entrada fornecem uma lista suspensa com os valores disponíveis para seleção, bem como "rótulos" para os parâmetros de entrada:
3.2.2 Incluir Biblioteca de Estratégias de Opções Binárias.
Se você baixou e armazenou a biblioteca (veja 2. Instalação) na pasta \ Include ([caminho para seu MetaTrader 4] \ MQL4 \ Include), você pode incluir a biblioteca da seguinte forma:
// | Copyright 2016, __martin__ |
#property copyright "Copyright 2016, __martin__"
#property link "mql5 / pt / users / __ martin__"
#property version "1.00"
Alterar o conteúdo da biblioteca não é necessário!
Binary-Options-Strategy-Library irá melhorar os parâmetros de entrada com dois novos parâmetros:
Coloque apenas uma VENDA ou uma troca de COMPRA por vela Verifique apenas no início de uma nova vela para a estratégia.
3.2.3 Adicionar CallStrategy ()
Adicione uma chamada para CallStrategy () - função em OnCalculate () do seu indicador de estratégia para chamar a estratégia em cada novo tick. CallStrategy () é fornecido pelo Binary-Options-Strategy-Library que você incluiu como descrito acima:
// | Função de iteração do indicador personalizado |
int OnCalculate (const int rates_total,
const int prev_calculated,
const datetime & amp; time [],
const duplo & aberto [],
const double & amp; alta [],
const double & amp; low [],
const double & amp; close [],
const long & amp; tick_volume [],
Const long & amp; volume [],
const int & amp; spread [])
Portanto, você precisa implementar a função CheckMyRules () no seu indicador de estratégia Opções Binárias.
3.2.4 Implemente CheckMyRules () e função auxiliar.
Na função CheckMyRules (), que é chamada através da Biblioteca de Estratégia de Opções Binárias, as condições para a estratégia são implementadas e as negociações são feitas através da função PlaceTrade () da biblioteca. Os valores de ambas as Médias Móveis são temporariamente armazenados em variáveis para compará-los em condições if, enquanto os valores das Médias Móveis são retirados da função auxiliar GetValuesForMA ():
entrada int period_fast = 5; // valor MA rápido.
entrada int period_slow = 10; // Valor MA lento.
entrada ENUM_MA_METHOD method_both = MODE_SMA; // método MA.
entrada ENUM_APPLIED_PRICE applied_price_both = PRICE_CLOSE; // MA preço aplicado.
// | Coloque suas regras de negociação aqui - veja o exemplo abaixo. |
// | O StrategyTester irá chamar esta função para colocar negociações. |
// | - Adicionar parâmetros de função, por exemplo CheckMyRules (int a) |
// | - Alterar o tipo de retorno da função, por ex. int CheckMyRules () |
// chama a função auxiliar GetValueForMA () para obter o valor - veja as funções auxiliares abaixo.
double emaSlow_Current = GetValueForMA (period_slow, 0);
double emaFast_Current = GetValueForMA (period_fast, 0);
// chama a função auxiliar GetValueForMA () para obter o valor - veja as funções auxiliares abaixo.
double emaSlow_Past = GetValueForMA (period_slow, 1);
double emaFast_Past = GetValueForMA (period_fast, 1);
& amp; & amp; emaFast_Current & lt; emaSlow_Past) // Verifique se o MA lento e o MA rápido cruzam.
PlaceTrade (OP_SELL); // Coloque o Trade de VENDA para o Strategy-Tester, a função está localizada em BinaryOptionsStrategyFunctions. mqh.
& amp; & amp; emaFast_Current & gt; emaSlow_Past) // Verifique se o MA lento e o MA rápido cruzam.
PlaceTrade (OP_BUY); // Coloque BUY-Trade for Strategy-Tester, a função está localizada em BinaryOptionsStrategyFunctions. mqh.
// | Coloque suas Funções Auxiliares aqui, veja o exemplo abaixo |
// | Obtenha valores MA para período, método, preço aplicado e turno. |
// | Para detalhes sobre o iMA (), consulte docs. mql4 / indicators / ima |
double GetValueForMA (int _period, int _shift)
return iMA (NULL, 0, _period, 0, method_both, applied_price_both, _shift);
3.2.5 Imprimir os valores de depuração.
A função PrintDebugValue () oferece a possibilidade de imprimir valores de depuração enquanto o testador está sendo executado. No exemplo abaixo, os valores das Médias Móveis são impressos com seus nomes de variáveis como rótulos:
entrada int period_fast = 5; // valor MA rápido.
entrada int period_slow = 10; // Valor MA lento.
entrada ENUM_MA_METHOD method_both = MODE_SMA; // método MA.
entrada ENUM_APPLIED_PRICE applied_price_both = PRICE_CLOSE; // MA preço aplicado.
// | Coloque suas regras de negociação aqui - veja o exemplo abaixo. |
// | O StrategyTester irá chamar esta função para colocar negociações. |
// | - Adicionar parâmetros de função, por exemplo CheckMyRules (int a) |
// | - Alterar o tipo de retorno da função, por ex. int CheckMyRules () |
// chama a função auxiliar GetValueForMA () para obter o valor - veja as funções auxiliares abaixo.
double emaSlow_Current = GetValueForMA (period_slow, 0);
double emaFast_Current = GetValueForMA (period_fast, 0);
// chama a função auxiliar GetValueForMA () para obter o valor - veja as funções auxiliares abaixo.
double emaSlow_Past = GetValueForMA (period_slow, 1);
double emaFast_Past = GetValueForMA (period_fast, 1);
PrintDebugValue ("emaFast_Current:", (string) emaFast_Current, 1); // Rótulo e valor na linha 1.
PrintDebugValue ("emaSlow_Past:", (string) emaSlow_Past, 2); // Rótulo e valor na linha 2.
PrintDebugValue ("emaFast_Past:", (string) emaFast_Past, 3); // Rótulo e valor na linha 3.
& amp; & amp; emaFast_Current & lt; emaSlow_Past) // Verifique se o MA lento e o MA rápido cruzam.
PlaceTrade (OP_SELL); // Coloque o Trade de VENDA para o Strategy-Tester, a função está localizada em BinaryOptionsStrategyFunctions. mqh.
& amp; & amp; emaFast_Current & gt; emaSlow_Past) // Verifique se o MA lento e o MA rápido cruzam.
PlaceTrade (OP_BUY); // Coloque BUY-Trade for Strategy-Tester, a função está localizada em BinaryOptionsStrategyFunctions. mqh.
// | Coloque suas Funções Auxiliares aqui, veja o exemplo abaixo |
// | Obtenha valores MA para período, método, preço aplicado e turno. |
// | Para detalhes sobre o iMA (), consulte docs. mql4 / indicators / ima |
double GetValueForMA (int _period, int _shift)
return iMA (NULL, 0, _period, 0, method_both, applied_price_both, _shift);
3.2.6 Uso de indicadores externos (arquivos ex4)
Além disso, um indicador externo que armazena seus valores em buffers pode ser acessado para a estratégia Opções Binárias, mesmo que exista apenas o arquivo ex4 compilado.
Digamos que gostamos de incluir a linha de sinal do indicador KVO mql5 / en / code / 8677 para colocar as negociações somente se a linha de sinal for maior que 0 para operações de COMPRA e abaixo de 0 para negociações de VENDAS. Faça o download do indicador KVO. mq4 e coloque o arquivo compilado (ex4) na pasta \ Indicators \ Downloads ([caminho para seu MetaTrader 4] \ MQL4 \ Indicators \ Downloads).
Para compilar o arquivo. ex4 necessário, abra o KVO. mq4 no MetaQuotes Language Editor e clique no botão "Compile" ou apenas reinicie o seu MetaTrader 4 depois que o arquivo estiver armazenado na pasta descrita e o MetaTrader 4 fará isso automaticamente para você.
Primeiro, temos que identificar os buffers relevantes que armazenam os valores relevantes para acessar. Portanto, pressionamos o botão "Data Window" no MetaTrader 4 para mostrar todos os buffers disponíveis dos indicadores usados e arraste o indicador KVO em um gráfico. Ao passar o cursor sobre o gráfico (pressionar a roda do mouse no gráfico para exibir a cruz), os valores do buffer do indicador do período de tempo flutuante serão mostrados na janela de dados:
Os rótulos da janela de dados nos informam que o segundo valor de buffer do indicador armazena a linha de sinal. Se os buffers dos indicadores não tiverem rótulos, podemos encontrar o caminho certo comparando os valores do buffer com o valor exibido sob a cruz no gráfico e no indicador. Os buffers de um indicador começam com 0, então temos o valor do buffer 1 = buffer 0, valor do buffer 2 = buffer 1 e assim por diante e temos que acessar o buffer 1 para obter o valor do sinal.
Em seguida, temos que conhecer todos os parâmetros de entrada do indicador externo que gostamos de acessar. Arrastando o indicador em um gráfico, vemos todos os parâmetros de entrada:
Vamos dizer ainda, nós gostamos de acessar o indicador com valores (padrão): 34, 55 e 13. Usamos uma função auxiliar (baseada no iCostum), que nos fornece a possibilidade de obter os valores do indicador com parâmetros para buffer e shift, enquanto o turno 0 será o valor da vela atual, mude 1 o valor da última vela, mude 2 o valor da segunda para a última vela e assim por diante. Além disso, armazenamos temporariamente os valores do buffer de indicador e aprimoramos a condição if da estratégia:
entrada int period_fast = 5; // valor MA rápido.
entrada int period_slow = 10; // Valor MA lento.
entrada ENUM_MA_METHOD method_both = MODE_SMA; // método MA.
entrada ENUM_APPLIED_PRICE applied_price_both = PRICE_CLOSE; // MA preço aplicado.
// | Coloque suas regras de negociação aqui - veja o exemplo abaixo. |
// | O StrategyTester irá chamar esta função para colocar negociações. |
// | - Adicionar parâmetros de função, por exemplo CheckMyRules (int a) |
// | - Alterar o tipo de retorno da função, por ex. int CheckMyRules () |
// chama a função auxiliar GetValueForMA () para obter o valor - veja as funções auxiliares abaixo.
double emaSlow_Current = GetValueForMA (period_slow, 0);
double emaFast_Current = GetValueForMA (period_fast, 0);
// chama a função auxiliar GetValueForMA () para obter o valor - veja as funções auxiliares abaixo.
double emaSlow_Past = GetValueForMA (period_slow, 1);
double emaFast_Past = GetValueForMA (period_fast, 1);
double kvoSignal = GetValuesFromIndicator__KVO __ (1, 0);
PrintDebugValue ("emaFast_Current:", (string) emaFast_Current, 1); // Rótulo e valor na linha 1.
PrintDebugValue ("emaSlow_Past:", (string) emaSlow_Past, 2); // Rótulo e valor na linha 2.
PrintDebugValue ("emaFast_Past:", (string) emaFast_Past, 3); // Rótulo e valor na linha 3.
& amp; & amp; emaFast_Current & lt; emaSlow_Past // Verifique se o MA lento e o MA rápido cruzam.
& amp; & amp; kvoSignal & lt; 0) // Verifique se o valor do sinal de KVO está abaixo de 0.
PlaceTrade (OP_SELL); // Coloque o Trade de VENDA para o Strategy-Tester, a função está localizada em BinaryOptionsStrategyFunctions. mqh.
& amp; & amp; emaFast_Current & gt; emaSlow_Past // Verifique se o MA lento e o MA rápido cruzam.
& amp; & amp; kvoSignal & gt; 0) // Verifique se o valor do sinal de KVO está acima de 0.
PlaceTrade (OP_BUY); // Coloque BUY-Trade for Strategy-Tester, a função está localizada em BinaryOptionsStrategyFunctions. mqh.
// | Coloque suas Funções Auxiliares aqui, veja o exemplo abaixo |
// | Obtenha valores MA para período, método, preço aplicado e turno. |
// | Para detalhes sobre o iMA (), consulte docs. mql4 / indicators / ima |
double GetValueForMA (int _period, int _shift)
return iMA (NULL, 0, _period, 0, method_both, applied_price_both, _shift);
// | Exemplo como obter valores de indicadores externos |
// | int _buffer - indicator-buffer (inicia com 0) |
// | int _shift - value to shift; 0 = vela atual, 1 = vela anterior |
getValuesFromIndicator__KVO duplo __ (int _buffer, int _shift = 0) // Mude "__KVO__" para o nome do indicador.
NULL, // NULL para o período de tempo atual selecionado no testador - SEM ALTERAÇÕES NECESSÁRIAS.
0, // 0 para o símbolo atual selecionado no testador - SEM ALTERAÇÕES NECESSÁRIAS.
"\\ Downloads \\ KVO. ex4", // Filepath e nome do arquivo do indicador (arquivo *.ex4)
// INICIAR INICIAIS DE INDICADORES.
_shift // Shift (0 para vela atual), _shift é endereçado sobre o parâmetro de função - NO MUDANÇAS NECESSÁRIAS.
Também é possível melhorar os parâmetros de entrada do nosso indicador de estratégia com os valores do indicador KVO usado e definir os valores na função auxiliar por variáveis. Como este tutorial deve ser apenas um exemplo e "tão simples quanto possível", essa variante não é mostrada.
3.3 O código completo.
Abaixo, você encontrará o código completo do Exemplo de Estratégia de Opções Binárias de todas as etapas acima, pronto para ser arrastado no Verificador de Estratégia de Opções Binárias para testar e ver os resultados no gráfico:
// | Copyright 2016, __martin__ |
#property copyright "Copyright 2016, __martin__"
#property link "mql5 / pt / users / __ martin__"
#property version "1.00"
// | Coloque seus parâmetros de entrada aqui - veja o exemplo abaixo |
entrada int period_fast = 5; // valor MA rápido.
entrada int period_slow = 10; // Valor MA lento.
entrada ENUM_MA_METHOD method_both = MODE_SMA; // método MA.
entrada ENUM_APPLIED_PRICE applied_price_both = PRICE_CLOSE; // MA preço aplicado.
// | Função de inicialização do indicador personalizado |
// --- mapeamento de buffers de indicador.
// | Função de iteração do indicador personalizado |
int OnCalculate (const int rates_total,
const int prev_calculated,
const datetime & amp; time [],
const duplo & aberto [],
const double & amp; alta [],
const double & amp; low [],
const double & amp; close [],
const long & amp; tick_volume [],
Const long & amp; volume [],
const int & amp; spread [])
// | Coloque suas regras de negociação aqui - veja o exemplo abaixo. |
// | O StrategyTester irá chamar esta função para colocar negociações. |
// | - Adicionar parâmetros de função, por exemplo CheckMyRules (int a) |
// | - Alterar o tipo de retorno da função, por ex. int CheckMyRules () |
// chama a função auxiliar GetValueForMA () para obter o valor - veja as funções auxiliares abaixo.
double emaSlow_Current = GetValueForMA (period_slow, 0);
double emaFast_Current = GetValueForMA (period_fast, 0);
// chama a função auxiliar GetValueForMA () para obter o valor - veja as funções auxiliares abaixo.
double emaSlow_Past = GetValueForMA (period_slow, 1);
double emaFast_Past = GetValueForMA (period_fast, 1);
double kvoSignal = GetValuesFromIndicator__KVO __ (1, 0);
PrintDebugValue ("emaFast_Current:", (string) emaFast_Current, 1); // Rótulo e valor na linha 1.
PrintDebugValue ("emaSlow_Past:", (string) emaSlow_Past, 2); // Rótulo e valor na linha 2.
PrintDebugValue ("emaFast_Past:", (string) emaFast_Past, 3); // Rótulo e valor na linha 3.
& amp; & amp; emaFast_Current & lt; emaSlow_Past // Verifique se o MA lento e o MA rápido cruzam.
& amp; & amp; kvoSignal & lt; 0) // Verifique se o valor do sinal de KVO está abaixo de 0.
PlaceTrade (OP_SELL); // Coloque o Trade de VENDA para o Strategy-Tester, a função está localizada em BinaryOptionsStrategyLibrary. mqh.
& amp; & amp; emaFast_Current & gt; emaSlow_Past // Verifique se o MA lento e o MA rápido cruzam.
& amp; & amp; kvoSignal & gt; 0) // Verifique se o valor do sinal de KVO está acima de 0.
PlaceTrade (OP_BUY); // Coloque BUY-Trade for Strategy-Tester, a função está localizada em BinaryOptionsStrategyLibrary. mqh.
// | Coloque suas Funções Auxiliares aqui, veja o exemplo abaixo |
// | Obtenha valores MA para período, método, preço aplicado e turno. |
// | Para detalhes sobre o iMA (), consulte docs. mql4 / indicators / ima |
double GetValueForMA (int _period, int _shift)
return iMA (NULL, 0, _period, 0, method_both, applied_price_both, _shift);
// | Exemplo como obter valores de indicadores externos |
// | int _buffer - indicator-buffer (inicia com 0) |
// | int _shift - value to shift; 0 = vela atual, 1 = vela anterior |
getValuesFromIndicator__KVO duplo __ (int _buffer, int _shift = 0) // Mude "__KVO__" para o nome do indicador.
NULL, // NULL para o período de tempo atual selecionado no testador - SEM ALTERAÇÕES NECESSÁRIAS.
0, // 0 para o símbolo atual selecionado no testador - SEM ALTERAÇÕES NECESSÁRIAS.
"\\ Downloads \\ KVO. ex4", // Filepath e nome do arquivo do indicador (arquivo *.ex4)
// COMEÇA INPUTOS INDICADORES.
_shift // Shift (0 para vela atual), _shift é endereçado sobre o parâmetro de função - NO MUDANÇAS NECESSÁRIAS.
4. Execute um backtest (video)
O vídeo a seguir mostra como executar um backtest de sua estratégia de opções binárias no Strategy-Tester do MetaTrader 4:
Inicie o Binary-Options-Strategy-Tester no Strategy-Tester do MetaTrader 4 e defina os parâmetros de entrada Arraste seu indicador de estratégia Opções Binárias no gráfico, defina os parâmetros de entrada e marque "Permitir importações de especialistas externos" na guia "comum" usaram indicadores com seus parâmetros de entrada usados no gráfico para ver seus valores enquanto o testador está em execução (opcional) Salva todas as configurações em um modelo para executar o teste com todas as configurações novamente - usando o botão de pausa do Strategy-Tester (opcional) resultados de sua estratégia de opções binárias no gráfico Strategy-Tester.
5. Execute um teste direto.
Para fazer um forward test, simplesmente arraste o utilitário Binary-Options-Strategy-Tester e seu indicador de estratégia na sua demonstração ou live chart do seu corretor em vez de usá-lo no Strategy-Tester:
Arraste o utilitário Binary-Options-Strategy-Tester na demonstração ou no gráfico ativo e defina os parâmetros de entrada Arraste seu indicador de estratégia Opções Binárias no gráfico, defina os parâmetros de entrada e marque "Permitir importações de especialistas externos" na guia "comum" indicadores com seus parâmetros de entrada usados no gráfico para ver seus valores enquanto o teste de encaminhamento está em execução (opcional) Salve todas as configurações em um modelo para executar o teste novamente com todas as configurações (opcional) Veja os resultados de sua estratégia de opções binárias em demonstração ou ao vivo gráfico.
Pergunta: Por que você mostra um exemplo de uma estratégia de Opções Binárias não lucrativa?
Answer: Este é apenas um exemplo de como construir uma estratégia em um indicador para se comunicar com o utilitário Binary-Options-Strategy-Tester no mercado para testar e melhorar sua estratégia.
Pergunta: Binary-Options-Strategy-Tester pára após a quantia exata de perdas com erro "Array out of range". Por quê?
Answer: Binary-Options-Strategy-Tester pode subir um erro após x perdas para parar o Tester e analisar a situação no gráfico. Se você não quiser, basta desativar a opção nas configurações.
Pergunta: Nenhuma flecha aparece no gráfico depois de eu ter arrastado meu indicador com uma estratégia de trabalho. O que aconteceu?
Answer: Você tem que habilitar "Permitir importações de especialistas externos" na guia "comum" enquanto arrasta seu indicador de estratégia no gráfico (a mensagem de log mostrará um erro neste caso).
Pergunta: Nenhuma seta aparece no gráfico após eu ter arrastado meu indicador com uma estratégia de trabalho nele com "Permitir importações de especialistas externos" ativada. Por quê?
Answer: Uma estratégia tem que chamar uma função de Binary-Options-Strategy-Tester para colocar negociações virtuais. Relacionado ao conceito de licença MQL4, isso só funciona se o produto tiver uma licença válida. Portanto, você tem que comprar o produto.
Pergunta: Nenhuma seta aparece no gráfico depois que eu arrastei meu indicador com uma estratégia de trabalho e recebi erros como "Não é possível ligar .." ou "Não é possível carregar .." no log do MetaTrader 4. O que posso fazer?
Answer: Use a versão mais recente (maior v1.00) do BinaryOptionsStrategyLibrary. mqh. Verifique a tag de versão no código da sua BinaryOptionsStrategyLibrary. mqh e veja o changelog v1.01 de BinaryOptionsStrategyLibrary.
Pergunta: Não vejo resultados nas guias do Strategy-Tester "Resultados", "Gráfico", "Relatório". Onde eu posso ver os resultados?
Answer: O Strategy-Tester do MetaTrader 4 não pode manipular Opções Binárias para que estas abas não sejam usadas. Portanto, este utilitário calcula todos os ganhos e perdas e imprime os resultados no gráfico.
Como eu preciso da possibilidade de testar estratégias de Opções Binárias automatizadas no Strategy-Tester do MetaTrader 4 por longos períodos de tempo em um curto período de tempo e fazer testes de avanço no gráfico do broker, este utilitário foi construído. Passei muito tempo para o conceito e a implementação do Binary-Options-Strategy-Tester, bem como para a documentação. Talvez exista uma maneira melhor de fazer isso e talvez algumas melhorias o aproximem das necessidades de você. Então, por favor, sinta-se à vontade para entrar em contato comigo para idéias de melhorias!
As opções semanais tornaram-se um ponto forte entre os operadores de opções. Infelizmente, mas previsível, a maioria dos traders os utiliza para pura especulação.
Mas isso está certo.
Como a maioria de vocês sabem, lido principalmente com estratégias de venda de opções de alta probabilidade. Então, o benefício de ter um novo e crescente mercado de especuladores é que temos a capacidade de levar o outro lado do seu comércio. Eu gosto de usar a analogia do cassino. Os especuladores (compradores de opções) são os jogadores e nós (vendedores de opções) são o cassino. E como todos sabem, a longo prazo, o cassino sempre vence.
Por quê? ... porque as probabilidades estão esmagadoramente do nosso lado.
Até agora, minha abordagem estatística às opções semanais funcionou bem. Eu introduzi uma nova carteira (atualmente temos 4) para assinantes da Options Advantage no final de fevereiro e até agora o retorno sobre o capital foi ligeiramente superior a 25%.
Tenho certeza de que alguns de vocês podem estar perguntando quais são as opções semanais. Bem, em 2005, o Chicago Board Options Exchange introduziu "semanas" para o público. Mas, como você pode ver no gráfico acima, não foi até 2009 que o volume do produto em expansão decolou. Agora, por semana, tornou-se um dos produtos comerciais mais populares que o mercado tem para oferecer.
Então, como eu uso opções semanais?
Eu começo definindo minha cesta de ações. Felizmente, a pesquisa não leva muito tempo, considerando que as semanas são limitadas aos produtos mais líquidos, como SPY, QQQ, DIA e afins.
A minha preferência é usar o S & amp; P 500 ETF, SPY. É um produto altamente líquido e estou completamente confortável com o risco / retorno oferecido pela SPY. Mais importante, eu não estou exposto à volatilidade causada por imprevistos imprevistos que podem ser prejudiciais ao preço de uma ação individual e, por sua vez, a minha posição de opções.
Uma vez que eu decidiu no meu subjacente, no meu caso SPY, eu começo a tomar as mesmas providências que eu uso ao vender opções mensais.
Eu monitora diariamente a leitura do SPY de sobrecompra / sobrevenda usando um simples indicador conhecido como RSI. E eu usá-lo ao longo de vários prazos (2), (3) e (5). Isso me dá uma imagem mais precisa quanto ao excesso ou sobrevoque da SPY durante o curto prazo.
Em termos simples, o RSI mede o quanto é sobrecomprado ou sobrevendido de uma ação ou ETF diariamente. Uma leitura acima de 80 significa que o ativo está sobrecomprado, abaixo de 20 significa que o ativo está sobrevendido.
Mais uma vez, vejo o RSI diariamente e espere pacientemente que o SPY se mova para um estado de overbought / sobrevoo extremo.
Uma vez que uma leitura extrema atinge eu faço uma troca.
Deve-se ressaltar que apenas porque as opções que uso são chamadas Weeklys, não significa que as troque semanalmente. Assim como minhas outras estratégias de alta probabilidade, só farei negócios que façam sentido. Como sempre, eu permitirei que os negócios viessem até mim e não forçam um comércio apenas por fazer um comércio. Eu sei que isso pode parecer óbvio, mas outros serviços oferecem trades porque prometem uma quantidade específica de negócios semanalmente ou mensalmente. Isso não faz sentido, nem é uma abordagem sustentável e mais importante, rentável.
Ok, então, diga que SPY empurra um estado de sobrecompra como a ETF no dia 2 de abril.
Uma vez, vemos uma confirmação de que ocorreu uma leitura extrema que queremos enfraquecer a atual tendência de curto prazo, porque a história nos diz quando um extremo de curto prazo atinge um alívio de curto prazo está ao virar da esquina.
No nosso caso, usaríamos um spread de chamada de urso. Um spread de chamada de urso funciona melhor quando o mercado se move mais baixo, mas também funciona em um mercado plano a ligeiramente maior.
E é aí que a analogia do cassino realmente entra em jogo.
Lembre-se, a maioria dos comerciantes que usam semanalmente são especuladores que visam as cercas. Eles querem fazer um pequeno investimento e fazer retornos exponenciais.
Dê uma olhada na cadeia de opções abaixo.
Quero me concentrar nas porcentagens na coluna da extrema esquerda.
Sabendo que o SPY está atualmente sendo negociado por aproximadamente US $ 182, posso vender opções com uma probabilidade de sucesso superior a 85% e trazer um retorno de 6,9%. Se eu diminuir minha probabilidade de sucesso, posso aumentar ainda mais o prêmio, aumentando assim meu retorno. Isso realmente depende de quanto risco você está disposto a assumir. Eu prefiro 80% ou acima.
Faça a greve em 14 de abril de 187. Tem uma probabilidade de sucesso (Prob. OTM) de 85,97%. Essas são chances incríveis quando você considera que o especulador (o jogador) tem menos de 15% de chance de sucesso. É um conceito simples que, por algum motivo, muitos investidores não conhecem.
Um sistema simples para ganhar quase 9-out-of 10 ofícios.
Investidores regulares sonham com esses tipos de oportunidades - mas poucos acreditam que sejam reais. Como os dragões, a idéia de ganhar dinheiro em quase 9-out-10 comércios parece coisa de lenda ou, se real, reservada exclusivamente para os comerciantes mais espertos do mercado. No entanto, é muito real. E facilmente ao alcance de investidores regulares. Você pode aprender tudo sobre essa estratégia segura e simples - e os próximos três trades se formando agora - clicando neste link aqui. Mate seu próprio dragão - Vá aqui agora.
Como construir e testar uma estratégia de opções binárias com o testador de estratégia do MetaTrader 4.
Índice.
Este artigo mostra como criar uma estratégia de Opções Binárias e testá-la no Strategy-Tester do Metatrader 4 com o utilitário Binary-Options-Strategy-Tester. Por padrão, o Strategy-Tester do Metatrader 4 pode testar Expert Advisors e Indicadores em relação a dados históricos, mas não pode manipular Opções Binárias com tempos de expiração. Como eu preciso da possibilidade de testar estratégias de Opções Binárias automatizadas no Strategy-Tester do MetaTrader 4, o Binary-Options-Strategy-Tester foi construído como um utilitário para atender a essas necessidades.
O conceito contém as seguintes partes:
Este é um exemplo passo a passo de como construir uma estratégia de Opções Binárias armazenada em um Indicador (marcado como vermelho na imagem acima) para se comunicar através da Biblioteca de Estratégia de Opções Binárias (marcada como verde na imagem acima) com as Opções Binárias. Strategy-Tester (marcado como azul na imagem acima), para colocar pedidos virtuais e contar seus resultados com backtests e forward tests.
Lembre-se: o backtesting com dados históricos nunca representará o futuro real, mas pode fornecer um valor aproximado para que sua estratégia fique mais estável.
A qualidade do seu backtest depende dos seus dados históricos. Portanto, é altamente recomendável usar um conjunto de dados de alta qualidade!
Faça o download e compre o utilitário Binary-Options-Strategy-Tester no marketplace:
Test-Framework para testar estratégias de Opções Binárias no Strategy-Tester do MetaTrader 4.
Por que uma versão comprada do utilitário Binary-Options-Strategy-Tester é necessária?
Uma estratégia de opções binárias tem que chamar uma função do Binary-Options-Strategy-Tester (via Binary-Options-Strategy-Library) para colocar os negócios virtuais. Relacionado ao conceito de licença do MQL4, isso só funciona se o produto tiver uma licença válida. Portanto, você precisa comprar o produto para testar as estratégias de Opções Binárias ou este exemplo.
Baixe gratuitamente o BinaryOptionsStrategyLibrary. mqh e coloque-o na pasta \ Include ([caminho para o seu MetaTrader 4] \ MQL4 \ Include):
A biblioteca gratuita fornecerá várias funções para criar sua estratégia de Opções Binárias facilmente e para se comunicar com o Binary-Options-Strategy-Tester. Veja Binary-Options-Strategy-Library para mais detalhes da biblioteca.
Faça o download do indicador KVO. mq4 e coloque-o (e o arquivo compilado KVO. ex4) na pasta \ Indicators \ Downloads ([caminho para seu MetaTrader 4] \ MQL4 \ Indicators \ Downloads):
O indicador KVO é usado como um exemplo para mostrar o acesso de indicadores externos e arquivos ex4 na seção "3.2.6 Uso de indicadores externos (arquivos ex4)". Veja mql5 / en / code / 8677 para mais detalhes do indicador.
Agora você pode ir mais longe com a seção "3. Exemplo de estratégia de opções binárias" e criar o código de exemplo sozinho ou apenas fazer o download do código deste exemplo abaixo.
Faça o download opcional de BinaryOptionsStrategyExample. mq4 e coloque-o (e o arquivo compilado BinaryOptionsStrategyExample. ex4) em folder \ Indicators ([caminho para seu MetaTrader 4] \ MQL4 \ Indicators):
Faça o download do código desse exemplo de estratégia de opções binárias para deixá-lo rodar sem construí-lo sozinho.
Para compilar os arquivos. ex4 necessários, abra os arquivos. mq4 (KVO. mq4 e BinaryOptionsStrategyExample. mq4 - NÃO Binário-Opções-Estratégia-Biblioteca. mqh) no MetaQuotes Language Editor e clique no botão "Compile" ou apenas reinicie o seu MetaTrader 4 após esses arquivos são armazenados nas pastas descritas e o MetaTrader 4 fará isso automaticamente para você.
3. Exemplo de estratégia de opções binárias.
As etapas a seguir guiarão você por meio de um exemplo de como criar um exemplo de estratégia de Opções Binárias armazenada em um Indicador para se comunicar com o Binary-Options-Strategy-Tester. Você pode construí-lo sozinho ou apenas baixar o código do BinaryOptionsStrategyExample. mq4.
Por favor note: Esta estratégia não é uma estratégia de opções binárias rentável! É apenas um exemplo de como construir uma estratégia em um indicador para se comunicar com o utilitário Binary-Options-Strategy-Tester. Claro que você tem que construir uma estratégia lucrativa por conta própria. Mas, como você verá, esse utilitário ajudará você a testar e melhorar sua estratégia de Opções Binárias.
3.1 Definir estratégia de opções binárias.
Primeiramente, temos que definir a estratégia e os valores variáveis (parâmetros de entrada). A documentação do MQL4 mostra todos os indicadores técnicos, que podem ser endereçados através da interface iCustom: docs. mql4 / indicators.
Digamos que gostamos de criar uma estratégia cruzada de média móvel simples com uma média móvel "rápida" e outra "lenta" para trocar na próxima vela depois que elas se cruzarem. A documentação informa como podemos obter o valor de uma única média móvel: docs. mql4 / indicators / ima.
Vamos dizer ainda, nós gostamos de escolher valores para "período médio MA" (rápido e lento) e para "preço aplicado", bem como para o "método de média". Outros valores (como símbolo, período e turno) dependem do testcase (por exemplo, o símbolo em que o testador é executado) e devem ser configurados automaticamente. Portanto, basicamente, precisamos das seguintes variáveis para uma média móvel:
Como precisamos de duas Médias Móveis para verificar seus cruzamentos, precisamos dos seguintes parâmetros de entrada para o exemplo de estratégia com alguns valores padrão:
int period_slow = 10;
int method_both = 0;
int applied_price_both = 0;
3.2 Criar estratégia de opções binárias.
Você precisa criar um indicador que armazene sua estratégia de Opções Binárias para arrastá-la no gráfico onde o Binary-Options-Strategy-Tester está sendo executado.
Abra o MetaQuotes Language Editor (no MetaTrader 4 clique em "Tools" - & gt; "MetaQuotes Language Editor" ou simplesmente pressione F4) e clique em "New":
O Assistente MQL será exibido. Selecione "Custom Indicator" para criar um indicador vazio e clique em "Next":
Digite o nome, direitos autorais e link da estratégia, bem como os parâmetros de entrada com seus tipos e valores padrão (valores iniciais), clicando em "Adicionar" - Botão e pressione "Next":
Em manipuladores de eventos de abas, selecione a opção "OnCalculate", pois precisamos deste evento para verificar a nossa estratégia em cada tick. Pressione "Próximo":
Nas propriedades do desenho da aba, marque a caixa de seleção "Indicador na janela separada", pois precisamos de uma janela separada para imprimir os valores de depuração. Pressione "Concluir":
O código inicial do seu indicador será exibido:
// | Copyright 2016, __martin__ |
#property copyright "Copyright 2016, __martin__"
#property link "mql5 / pt / users / __ martin__"
#property version "1.00"
entrada int period_fast = 5;
entrada int period_slow = 10;
input int method_both = 0;
input int applied_price_both = 0;
// | Função de inicialização do indicador personalizado |
// --- mapeamento de buffers de indicador.
// | Função de iteração do indicador personalizado |
int OnCalculate (const int rates_total,
const int prev_calculated,
const datetime & amp; time [],
const duplo & aberto [],
const double & amp; alta [],
const double & amp; low [],
const double & amp; close [],
const long & amp; tick_volume [],
Const long & amp; volume [],
const int & amp; spread [])
3.2.1 Parâmetros de entrada.
Os parâmetros de entrada iniciais são criados com o Assistente MQL (consulte 3.2 Criar estratégia de opções binárias) e os aprimoraremos com as etapas a seguir.
Para evitar ter que inserir int-values para o preço aplicado e método de média das médias móveis para parâmetros de entrada, o tipo para method_both e applied_price_both é alterado de int para o tipo de enumeração com um valor padrão.
Além disso, comentários para os parâmetros de entrada são incluídos para mostrar os comentários como rótulos, em vez de nomes de variáveis:
entrada int period_fast = 5; // valor MA rápido.
entrada int period_slow = 10; // Valor MA lento.
entrada ENUM_MA_METHOD method_both = MODE_SMA; // método MA.
entrada ENUM_APPLIED_PRICE applied_price_both = PRICE_CLOSE; // MA preço aplicado.
Com essas modificações, os parâmetros de entrada fornecem uma lista suspensa com os valores disponíveis para seleção, bem como "rótulos" para os parâmetros de entrada:
3.2.2 Incluir Biblioteca de Estratégias de Opções Binárias.
Se você baixou e armazenou a biblioteca (veja 2. Instalação) na pasta \ Include ([caminho para seu MetaTrader 4] \ MQL4 \ Include), você pode incluir a biblioteca da seguinte forma:
// | Copyright 2016, __martin__ |
#property copyright "Copyright 2016, __martin__"
#property link "mql5 / pt / users / __ martin__"
#property version "1.00"
Alterar o conteúdo da biblioteca não é necessário!
Binary-Options-Strategy-Library irá melhorar os parâmetros de entrada com dois novos parâmetros:
Coloque apenas uma VENDA ou uma troca de COMPRA por vela Verifique apenas no início de uma nova vela para a estratégia.
3.2.3 Adicionar CallStrategy ()
Adicione uma chamada para CallStrategy () - função em OnCalculate () do seu indicador de estratégia para chamar a estratégia em cada novo tick. CallStrategy () é fornecido pelo Binary-Options-Strategy-Library que você incluiu como descrito acima:
// | Função de iteração do indicador personalizado |
int OnCalculate (const int rates_total,
const int prev_calculated,
const datetime & amp; time [],
const duplo & aberto [],
const double & amp; alta [],
const double & amp; low [],
const double & amp; close [],
const long & amp; tick_volume [],
Const long & amp; volume [],
const int & amp; spread [])
Portanto, você precisa implementar a função CheckMyRules () no seu indicador de estratégia Opções Binárias.
3.2.4 Implemente CheckMyRules () e função auxiliar.
Na função CheckMyRules (), que é chamada através da Biblioteca de Estratégia de Opções Binárias, as condições para a estratégia são implementadas e as negociações são feitas através da função PlaceTrade () da biblioteca. Os valores de ambas as Médias Móveis são temporariamente armazenados em variáveis para compará-los em condições if, enquanto os valores das Médias Móveis são retirados da função auxiliar GetValuesForMA ():
entrada int period_fast = 5; // valor MA rápido.
entrada int period_slow = 10; // Valor MA lento.
entrada ENUM_MA_METHOD method_both = MODE_SMA; // método MA.
entrada ENUM_APPLIED_PRICE applied_price_both = PRICE_CLOSE; // MA preço aplicado.
// | Coloque suas regras de negociação aqui - veja o exemplo abaixo. |
// | O StrategyTester irá chamar esta função para colocar negociações. |
// | - Adicionar parâmetros de função, por exemplo CheckMyRules (int a) |
// | - Alterar o tipo de retorno da função, por ex. int CheckMyRules () |
// chama a função auxiliar GetValueForMA () para obter o valor - veja as funções auxiliares abaixo.
double emaSlow_Current = GetValueForMA (period_slow, 0);
double emaFast_Current = GetValueForMA (period_fast, 0);
// chama a função auxiliar GetValueForMA () para obter o valor - veja as funções auxiliares abaixo.
double emaSlow_Past = GetValueForMA (period_slow, 1);
double emaFast_Past = GetValueForMA (period_fast, 1);
& amp; & amp; emaFast_Current & lt; emaSlow_Past) // Verifique se o MA lento e o MA rápido cruzam.
PlaceTrade (OP_SELL); // Coloque o Trade de VENDA para o Strategy-Tester, a função está localizada em BinaryOptionsStrategyFunctions. mqh.
& amp; & amp; emaFast_Current & gt; emaSlow_Past) // Verifique se o MA lento e o MA rápido cruzam.
PlaceTrade (OP_BUY); // Coloque BUY-Trade for Strategy-Tester, a função está localizada em BinaryOptionsStrategyFunctions. mqh.
// | Coloque suas Funções Auxiliares aqui, veja o exemplo abaixo |
// | Obtenha valores MA para período, método, preço aplicado e turno. |
// | Para detalhes sobre o iMA (), consulte docs. mql4 / indicators / ima |
double GetValueForMA (int _period, int _shift)
return iMA (NULL, 0, _period, 0, method_both, applied_price_both, _shift);
3.2.5 Imprimir os valores de depuração.
A função PrintDebugValue () oferece a possibilidade de imprimir valores de depuração enquanto o testador está sendo executado. No exemplo abaixo, os valores das Médias Móveis são impressos com seus nomes de variáveis como rótulos:
entrada int period_fast = 5; // valor MA rápido.
entrada int period_slow = 10; // Valor MA lento.
entrada ENUM_MA_METHOD method_both = MODE_SMA; // método MA.
entrada ENUM_APPLIED_PRICE applied_price_both = PRICE_CLOSE; // MA preço aplicado.
// | Coloque suas regras de negociação aqui - veja o exemplo abaixo. |
// | O StrategyTester irá chamar esta função para colocar negociações. |
// | - Adicionar parâmetros de função, por exemplo CheckMyRules (int a) |
// | - Alterar o tipo de retorno da função, por ex. int CheckMyRules () |
// chama a função auxiliar GetValueForMA () para obter o valor - veja as funções auxiliares abaixo.
double emaSlow_Current = GetValueForMA (period_slow, 0);
double emaFast_Current = GetValueForMA (period_fast, 0);
// chama a função auxiliar GetValueForMA () para obter o valor - veja as funções auxiliares abaixo.
double emaSlow_Past = GetValueForMA (period_slow, 1);
double emaFast_Past = GetValueForMA (period_fast, 1);
PrintDebugValue ("emaFast_Current:", (string) emaFast_Current, 1); // Rótulo e valor na linha 1.
PrintDebugValue ("emaSlow_Past:", (string) emaSlow_Past, 2); // Rótulo e valor na linha 2.
PrintDebugValue ("emaFast_Past:", (string) emaFast_Past, 3); // Rótulo e valor na linha 3.
& amp; & amp; emaFast_Current & lt; emaSlow_Past) // Verifique se o MA lento e o MA rápido cruzam.
PlaceTrade (OP_SELL); // Coloque o Trade de VENDA para o Strategy-Tester, a função está localizada em BinaryOptionsStrategyFunctions. mqh.
& amp; & amp; emaFast_Current & gt; emaSlow_Past) // Verifique se o MA lento e o MA rápido cruzam.
PlaceTrade (OP_BUY); // Coloque BUY-Trade for Strategy-Tester, a função está localizada em BinaryOptionsStrategyFunctions. mqh.
// | Coloque suas Funções Auxiliares aqui, veja o exemplo abaixo |
// | Obtenha valores MA para período, método, preço aplicado e turno. |
// | Para detalhes sobre o iMA (), consulte docs. mql4 / indicators / ima |
double GetValueForMA (int _period, int _shift)
return iMA (NULL, 0, _period, 0, method_both, applied_price_both, _shift);
3.2.6 Uso de indicadores externos (arquivos ex4)
Além disso, um indicador externo que armazena seus valores em buffers pode ser acessado para a estratégia Opções Binárias, mesmo que exista apenas o arquivo ex4 compilado.
Digamos que gostamos de incluir a linha de sinal do indicador KVO mql5 / en / code / 8677 para colocar as negociações somente se a linha de sinal for maior que 0 para operações de COMPRA e abaixo de 0 para negociações de VENDAS. Faça o download do indicador KVO. mq4 e coloque o arquivo compilado (ex4) na pasta \ Indicators \ Downloads ([caminho para seu MetaTrader 4] \ MQL4 \ Indicators \ Downloads).
Para compilar o arquivo. ex4 necessário, abra o KVO. mq4 no MetaQuotes Language Editor e clique no botão "Compile" ou apenas reinicie o seu MetaTrader 4 depois que o arquivo estiver armazenado na pasta descrita e o MetaTrader 4 fará isso automaticamente para você.
Primeiro, temos que identificar os buffers relevantes que armazenam os valores relevantes para acessar. Portanto, pressionamos o botão "Data Window" no MetaTrader 4 para mostrar todos os buffers disponíveis dos indicadores usados e arraste o indicador KVO em um gráfico. Ao passar o cursor sobre o gráfico (pressionar a roda do mouse no gráfico para exibir a cruz), os valores do buffer do indicador do período de tempo flutuante serão mostrados na janela de dados:
Os rótulos da janela de dados nos informam que o segundo valor de buffer do indicador armazena a linha de sinal. Se os buffers dos indicadores não tiverem rótulos, podemos encontrar o caminho certo comparando os valores do buffer com o valor exibido sob a cruz no gráfico e no indicador. Os buffers de um indicador começam com 0, então temos o valor do buffer 1 = buffer 0, valor do buffer 2 = buffer 1 e assim por diante e temos que acessar o buffer 1 para obter o valor do sinal.
Em seguida, temos que conhecer todos os parâmetros de entrada do indicador externo que gostamos de acessar. Arrastando o indicador em um gráfico, vemos todos os parâmetros de entrada:
Vamos dizer ainda, nós gostamos de acessar o indicador com valores (padrão): 34, 55 e 13. Usamos uma função auxiliar (baseada no iCostum), que nos fornece a possibilidade de obter os valores do indicador com parâmetros para buffer e shift, enquanto o turno 0 será o valor da vela atual, mude 1 o valor da última vela, mude 2 o valor da segunda para a última vela e assim por diante. Além disso, armazenamos temporariamente os valores do buffer de indicador e aprimoramos a condição if da estratégia:
entrada int period_fast = 5; // valor MA rápido.
entrada int period_slow = 10; // Valor MA lento.
entrada ENUM_MA_METHOD method_both = MODE_SMA; // método MA.
entrada ENUM_APPLIED_PRICE applied_price_both = PRICE_CLOSE; // MA preço aplicado.
// | Coloque suas regras de negociação aqui - veja o exemplo abaixo. |
// | O StrategyTester irá chamar esta função para colocar negociações. |
// | - Adicionar parâmetros de função, por exemplo CheckMyRules (int a) |
// | - Alterar o tipo de retorno da função, por ex. int CheckMyRules () |
// chama a função auxiliar GetValueForMA () para obter o valor - veja as funções auxiliares abaixo.
double emaSlow_Current = GetValueForMA (period_slow, 0);
double emaFast_Current = GetValueForMA (period_fast, 0);
// chama a função auxiliar GetValueForMA () para obter o valor - veja as funções auxiliares abaixo.
double emaSlow_Past = GetValueForMA (period_slow, 1);
double emaFast_Past = GetValueForMA (period_fast, 1);
double kvoSignal = GetValuesFromIndicator__KVO __ (1, 0);
PrintDebugValue ("emaFast_Current:", (string) emaFast_Current, 1); // Rótulo e valor na linha 1.
PrintDebugValue ("emaSlow_Past:", (string) emaSlow_Past, 2); // Rótulo e valor na linha 2.
PrintDebugValue ("emaFast_Past:", (string) emaFast_Past, 3); // Rótulo e valor na linha 3.
& amp; & amp; emaFast_Current & lt; emaSlow_Past // Verifique se o MA lento e o MA rápido cruzam.
& amp; & amp; kvoSignal & lt; 0) // Verifique se o valor do sinal de KVO está abaixo de 0.
PlaceTrade (OP_SELL); // Coloque o Trade de VENDA para o Strategy-Tester, a função está localizada em BinaryOptionsStrategyFunctions. mqh.
& amp; & amp; emaFast_Current & gt; emaSlow_Past // Verifique se o MA lento e o MA rápido cruzam.
& amp; & amp; kvoSignal & gt; 0) // Verifique se o valor do sinal de KVO está acima de 0.
PlaceTrade (OP_BUY); // Coloque BUY-Trade for Strategy-Tester, a função está localizada em BinaryOptionsStrategyFunctions. mqh.
// | Coloque suas Funções Auxiliares aqui, veja o exemplo abaixo |
// | Obtenha valores MA para período, método, preço aplicado e turno. |
// | Para detalhes sobre o iMA (), consulte docs. mql4 / indicators / ima |
double GetValueForMA (int _period, int _shift)
return iMA (NULL, 0, _period, 0, method_both, applied_price_both, _shift);
// | Exemplo como obter valores de indicadores externos |
// | int _buffer - indicator-buffer (inicia com 0) |
// | int _shift - value to shift; 0 = vela atual, 1 = vela anterior |
getValuesFromIndicator__KVO duplo __ (int _buffer, int _shift = 0) // Mude "__KVO__" para o nome do indicador.
NULL, // NULL para o período de tempo atual selecionado no testador - SEM ALTERAÇÕES NECESSÁRIAS.
0, // 0 para o símbolo atual selecionado no testador - SEM ALTERAÇÕES NECESSÁRIAS.
"\\ Downloads \\ KVO. ex4", // Filepath e nome do arquivo do indicador (arquivo *.ex4)
// INICIAR INICIAIS DE INDICADORES.
_shift // Shift (0 para vela atual), _shift é endereçado sobre o parâmetro de função - NO MUDANÇAS NECESSÁRIAS.
Também é possível melhorar os parâmetros de entrada do nosso indicador de estratégia com os valores do indicador KVO usado e definir os valores na função auxiliar por variáveis. Como este tutorial deve ser apenas um exemplo e "tão simples quanto possível", essa variante não é mostrada.
3.3 O código completo.
Abaixo, você encontrará o código completo do Exemplo de Estratégia de Opções Binárias de todas as etapas acima, pronto para ser arrastado no Verificador de Estratégia de Opções Binárias para testar e ver os resultados no gráfico:
// | Copyright 2016, __martin__ |
#property copyright "Copyright 2016, __martin__"
#property link "mql5 / pt / users / __ martin__"
#property version "1.00"
// | Coloque seus parâmetros de entrada aqui - veja o exemplo abaixo |
entrada int period_fast = 5; // valor MA rápido.
entrada int period_slow = 10; // Valor MA lento.
entrada ENUM_MA_METHOD method_both = MODE_SMA; // método MA.
entrada ENUM_APPLIED_PRICE applied_price_both = PRICE_CLOSE; // MA preço aplicado.
// | Função de inicialização do indicador personalizado |
// --- mapeamento de buffers de indicador.
// | Função de iteração do indicador personalizado |
int OnCalculate (const int rates_total,
const int prev_calculated,
const datetime & amp; time [],
const duplo & aberto [],
const double & amp; alta [],
const double & amp; low [],
const double & amp; close [],
const long & amp; tick_volume [],
Const long & amp; volume [],
const int & amp; spread [])
// | Coloque suas regras de negociação aqui - veja o exemplo abaixo. |
// | O StrategyTester irá chamar esta função para colocar negociações. |
// | - Adicionar parâmetros de função, por exemplo CheckMyRules (int a) |
// | - Alterar o tipo de retorno da função, por ex. int CheckMyRules () |
// chama a função auxiliar GetValueForMA () para obter o valor - veja as funções auxiliares abaixo.
double emaSlow_Current = GetValueForMA (period_slow, 0);
double emaFast_Current = GetValueForMA (period_fast, 0);
// chama a função auxiliar GetValueForMA () para obter o valor - veja as funções auxiliares abaixo.
double emaSlow_Past = GetValueForMA (period_slow, 1);
double emaFast_Past = GetValueForMA (period_fast, 1);
double kvoSignal = GetValuesFromIndicator__KVO __ (1, 0);
PrintDebugValue ("emaFast_Current:", (string) emaFast_Current, 1); // Rótulo e valor na linha 1.
PrintDebugValue ("emaSlow_Past:", (string) emaSlow_Past, 2); // Rótulo e valor na linha 2.
PrintDebugValue ("emaFast_Past:", (string) emaFast_Past, 3); // Rótulo e valor na linha 3.
& amp; & amp; emaFast_Current & lt; emaSlow_Past // Verifique se o MA lento e o MA rápido cruzam.
& amp; & amp; kvoSignal & lt; 0) // Verifique se o valor do sinal de KVO está abaixo de 0.
PlaceTrade (OP_SELL); // Coloque o Trade de VENDA para o Strategy-Tester, a função está localizada em BinaryOptionsStrategyLibrary. mqh.
& amp; & amp; emaFast_Current & gt; emaSlow_Past // Verifique se o MA lento e o MA rápido cruzam.
& amp; & amp; kvoSignal & gt; 0) // Verifique se o valor do sinal de KVO está acima de 0.
PlaceTrade (OP_BUY); // Coloque BUY-Trade for Strategy-Tester, a função está localizada em BinaryOptionsStrategyLibrary. mqh.
// | Coloque suas Funções Auxiliares aqui, veja o exemplo abaixo |
// | Obtenha valores MA para período, método, preço aplicado e turno. |
// | Para detalhes sobre o iMA (), consulte docs. mql4 / indicators / ima |
double GetValueForMA (int _period, int _shift)
return iMA (NULL, 0, _period, 0, method_both, applied_price_both, _shift);
// | Exemplo como obter valores de indicadores externos |
// | int _buffer - indicator-buffer (inicia com 0) |
// | int _shift - value to shift; 0 = vela atual, 1 = vela anterior |
getValuesFromIndicator__KVO duplo __ (int _buffer, int _shift = 0) // Mude "__KVO__" para o nome do indicador.
NULL, // NULL para o período de tempo atual selecionado no testador - SEM ALTERAÇÕES NECESSÁRIAS.
0, // 0 para o símbolo atual selecionado no testador - SEM ALTERAÇÕES NECESSÁRIAS.
"\\ Downloads \\ KVO. ex4", // Filepath e nome do arquivo do indicador (arquivo *.ex4)
// COMEÇA INPUTOS INDICADORES.
_shift // Shift (0 para vela atual), _shift é endereçado sobre o parâmetro de função - NO MUDANÇAS NECESSÁRIAS.
4. Execute um backtest (video)
O vídeo a seguir mostra como executar um backtest de sua estratégia de opções binárias no Strategy-Tester do MetaTrader 4:
Inicie o Binary-Options-Strategy-Tester no Strategy-Tester do MetaTrader 4 e defina os parâmetros de entrada Arraste seu indicador de estratégia Opções Binárias no gráfico, defina os parâmetros de entrada e marque "Permitir importações de especialistas externos" na guia "comum" usaram indicadores com seus parâmetros de entrada usados no gráfico para ver seus valores enquanto o testador está em execução (opcional) Salva todas as configurações em um modelo para executar o teste com todas as configurações novamente - usando o botão de pausa do Strategy-Tester (opcional) resultados de sua estratégia de opções binárias no gráfico Strategy-Tester.
5. Execute um teste direto.
Para fazer um forward test, simplesmente arraste o utilitário Binary-Options-Strategy-Tester e seu indicador de estratégia na sua demonstração ou live chart do seu corretor em vez de usá-lo no Strategy-Tester:
Arraste o utilitário Binary-Options-Strategy-Tester na demonstração ou no gráfico ativo e defina os parâmetros de entrada Arraste seu indicador de estratégia Opções Binárias no gráfico, defina os parâmetros de entrada e marque "Permitir importações de especialistas externos" na guia "comum" indicadores com seus parâmetros de entrada usados no gráfico para ver seus valores enquanto o teste de encaminhamento está em execução (opcional) Salve todas as configurações em um modelo para executar o teste novamente com todas as configurações (opcional) Veja os resultados de sua estratégia de opções binárias em demonstração ou ao vivo gráfico.
Pergunta: Por que você mostra um exemplo de uma estratégia de Opções Binárias não lucrativa?
Answer: Este é apenas um exemplo de como construir uma estratégia em um indicador para se comunicar com o utilitário Binary-Options-Strategy-Tester no mercado para testar e melhorar sua estratégia.
Pergunta: Binary-Options-Strategy-Tester pára após a quantia exata de perdas com erro "Array out of range". Por quê?
Answer: Binary-Options-Strategy-Tester pode subir um erro após x perdas para parar o Tester e analisar a situação no gráfico. Se você não quiser, basta desativar a opção nas configurações.
Pergunta: Nenhuma flecha aparece no gráfico depois de eu ter arrastado meu indicador com uma estratégia de trabalho. O que aconteceu?
Answer: Você tem que habilitar "Permitir importações de especialistas externos" na guia "comum" enquanto arrasta seu indicador de estratégia no gráfico (a mensagem de log mostrará um erro neste caso).
Pergunta: Nenhuma seta aparece no gráfico após eu ter arrastado meu indicador com uma estratégia de trabalho nele com "Permitir importações de especialistas externos" ativada. Por quê?
Answer: Uma estratégia tem que chamar uma função de Binary-Options-Strategy-Tester para colocar negociações virtuais. Relacionado ao conceito de licença MQL4, isso só funciona se o produto tiver uma licença válida. Portanto, você tem que comprar o produto.
Pergunta: Nenhuma seta aparece no gráfico depois que eu arrastei meu indicador com uma estratégia de trabalho e recebi erros como "Não é possível ligar .." ou "Não é possível carregar .." no log do MetaTrader 4. O que posso fazer?
Answer: Use a versão mais recente (maior v1.00) do BinaryOptionsStrategyLibrary. mqh. Verifique a tag de versão no código da sua BinaryOptionsStrategyLibrary. mqh e veja o changelog v1.01 de BinaryOptionsStrategyLibrary.
Pergunta: Não vejo resultados nas guias do Strategy-Tester "Resultados", "Gráfico", "Relatório". Onde eu posso ver os resultados?
Answer: O Strategy-Tester do MetaTrader 4 não pode manipular Opções Binárias para que estas abas não sejam usadas. Portanto, este utilitário calcula todos os ganhos e perdas e imprime os resultados no gráfico.
Como eu preciso da possibilidade de testar estratégias de Opções Binárias automatizadas no Strategy-Tester do MetaTrader 4 por longos períodos de tempo em um curto período de tempo e fazer testes de avanço no gráfico do broker, este utilitário foi construído. Passei muito tempo para o conceito e a implementação do Binary-Options-Strategy-Tester, bem como para a documentação. Talvez exista uma maneira melhor de fazer isso e talvez algumas melhorias o aproximem das necessidades de você. Então, por favor, sinta-se à vontade para entrar em contato comigo para idéias de melhorias!
Comments
Post a Comment