Monday 11 December 2017

M período móvel média no Brasil


Como você pode supor que nós estamos olhando algumas das aproximações as mais primitivas à previsão mas esperançosamente estes são pelo menos uma introdução de valor a algumas das edições de computação relacionadas a executar previsões em spreadsheets. In esta veia nós continuaremos por Começando no início e começar a trabalhar com previsões média móvel. Moving previsões médias Todo mundo está familiarizado com as previsões de média móvel, independentemente de se eles acreditam que são Todos os estudantes universitários fazê-los o tempo todo Pense sobre seus resultados de teste em um curso onde você está indo Ter quatro testes durante o semestre Vamos supor que você tem um 85 em seu primeiro teste. O que você poderia prever para sua segunda pontuação de teste. O que você acha que seu professor iria prever para sua próxima pontuação de teste. O que você acha que seus amigos podem prever Para sua próxima pontuação de teste. O que você acha que seus pais podem prever para a sua próxima pontuação de teste. Independentemente de todos os blabbing você pode fazer para o seu fr Eu e seus pais, eles e seu professor são muito provável esperar que você obtenha algo na área do 85 que você começou apenas. Bem, agora vamos supor que, apesar de sua auto-promoção para seus amigos, você superestima-se E figura você pode estudar menos para o segundo teste e assim você começa um 73.Now o que são todos os interessados ​​e despreocupados vai antecipar você vai chegar em seu terceiro teste Há duas abordagens muito provável para eles desenvolverem uma estimativa, independentemente de Se eles vão compartilhá-lo com você. Eles podem dizer a si mesmos, Este cara está sempre soprando fumaça sobre sua inteligência Ele vai ter outro 73 se ele tiver sorte. Talvez os pais vão tentar ser mais solidário e dizer, Bem, então Longe de você ter obtido um 85 e um 73, então talvez você deve figura em obter cerca de 85 73 2 79 Eu não sei, talvez se você fez menos festas e weren t sacudindo a doninha todo o lugar e se você começou a fazer um Muito mais estudar você poderia obter uma maior score. Both destas estimativas são reais A média móvel previsões. A primeira é usar apenas a sua pontuação mais recente para prever o seu desempenho futuro Isso é chamado de uma média móvel previsão usando um período de dados. O segundo é também uma média móvel previsão, mas usando dois períodos de dados. Somente Que todas essas pessoas rebentando em sua grande mente têm tipo de puto você fora e você decidir fazer bem no terceiro teste para suas próprias razões e colocar uma pontuação mais alta na frente de seus aliados Você faz o teste e sua pontuação é realmente um 89 Todo mundo, incluindo você, está impressionado. Então agora você tem o teste final do semestre chegando e, como de costume, você sente a necessidade de incitar todos a fazer suas predições sobre como você vai fazer no último teste. Bem, espero que você veja o Pattern. Now, espero que você pode ver o padrão Que você acha que é o mais preciso. Whistle Enquanto Trabalhamos Agora vamos voltar para a nossa nova empresa de limpeza iniciado por sua meia irmã distanciada chamado Whistle While We Work Você tem alguns dados de vendas anteriores Representado pela seguinte seção de uma planilha Nós primeiro apresentar os dados para um período de três média móvel forecast. The entrada para a célula C6 deve ser. Now você pode copiar esta fórmula de célula para baixo para as outras células C7 a C11.Notice como a média se move Sobre os dados históricos mais recentes, mas usa exatamente os três períodos mais recentes disponíveis para cada previsão Você também deve notar que realmente não precisamos fazer as previsões para os períodos passados, a fim de desenvolver a nossa previsão mais recente Isso é definitivamente diferente do Modelo de suavização exponencial Eu incluí as previsões passadas porque vamos usá-las na próxima página da web para medir a validade de previsão. Agora eu quero apresentar os resultados análogos para uma previsão média móvel de dois períodos. A entrada para a célula C5 deve ser. Agora você Pode copiar esta fórmula de célula para baixo para as outras células C6 a C11.Notice como agora apenas as duas mais recentes peças de dados históricos são utilizados para cada previsão Novamente tenho incluir D as previsões passadas para fins ilustrativos e para uso posterior na validação de previsão. Algumas outras coisas que são de importância para aviso. Para uma m-período média móvel previsão apenas os m valores de dados mais recentes são utilizados para fazer a previsão Nada mais é necessário. Para uma média móvel de m-período de previsão, ao fazer predições passadas, observe que a primeira predição ocorre no período m 1.Todas estas questões serão muito significativas quando desenvolvemos o nosso code. Developing a função média móvel Agora precisamos desenvolver O código para a previsão média móvel que pode ser usado de forma mais flexível O código segue Observe que as entradas são para o número de períodos que você deseja usar na previsão ea matriz de valores históricos Você pode armazená-lo em qualquer pasta de trabalho que você want. Function MovingAverage Histórico, NumberOfPeriods Como Único Declarar e inicializar variáveis ​​Dim Item como Variant Dim Counter As Integer Dim Acumulação como único Dim HistoricalSize As Integer. Inicializando variáveis ​​Counter 1 Acumulação 0. Determinando o tamanho de Historical array HistoricalSize. For Counter 1 To NumberOfPeriods. Acumulando o número apropriado de valores mais recentes anteriormente observados. Acumulação Acumulação Histórico Histórico Tamanho - NúmeroOfPeriodos Counter. MovingAverage Acumulação NumberOfPeriods. The código será explicado na classe Você deseja posicionar a função na planilha para que o resultado da computação aparece onde deveria Como o seguinte. MetaTrader 5 - Trading Systems. Adaptive Trading Systems e seu uso no cliente MetaTrader 5 Terminal. Centas de milhares de comerciantes em todo o mundo usam as plataformas de negociação desenvolvidas pela MetaQuotes Software Corp O fator chave levando ao sucesso é o tecnológico Superioridade com base na experiência de muitos anos e as melhores soluções de software. Muitas pessoas já estimaram novas oportunidades que se tornaram disponíveis com a nova linguagem MQL5 Suas principais características são o alto desempenho ea possibilidade de usar a programação orientada a objeto Além disso, Com a aparição da estratégia multi-moeda teste R no terminal do cliente MetaTrader 5, muitos comerciantes adquiriram ferramentas exclusivas para o desenvolvimento, aprendizagem e utilização de sistemas de negociação complexo. A negociação automática Championship 2010 começa este Outono milhares de robôs de negociação escrito em MQL5 vão participar nele um consultor especialista que ganha o O lucro máximo durante a competição ganhará Mas que estratégia aparecerá o mais eficaz. O testador da estratégia do terminal de MetaTrader 5 permite encontrar o mais melhor jogo de parâmetros, usando que o sistema ganha a quantidade máxima de lucro durante um período de tempo especificado mas pode Ser feito em tempo real A idéia do comércio virtual usando várias estratégias em um Expert Advisor foi considerada no Concurso de Consultores Especialistas dentro de um artigo Expert Advisor, que contém a sua implementação em MQL4.Neste artigo, vamos mostrar Que a criação e análise de estratégias adaptativas tornou-se significativamente mais fácil em MQL5 devido ao uso de programação orientada a objetos Classes para trabalhar com dados e classes de comércio da Biblioteca Padrão.1 Estratégias de Negociação Adaptativa. Mercados mudam constantemente Estratégias de comércio precisam sua adaptação às condições de mercado atuais. Os valores de parâmetros que dão a rentabilidade máxima da estratégia podem ser encontrados sem usar o Otimização através da mudança seqüencial de parâmetros e análise de resultados de testes. A Figura 1 demonstra as curvas de equidade para dez Consultores Especialistas MA3 MA93 cada um deles negociados pela estratégia de médias móveis, mas com períodos diferentes 3,13 93 O teste foi realizado em EURUSD H1 , O período de teste é 4 01 2010-20 08 2010.Figura 1 Diagramas de curvas de equidade de dez Conselheiros especialistas na conta. Como você pode ver na Figura 1, os Consultores Especialistas tiveram quase os mesmos resultados durante as duas primeiras semanas de Trabalhando, mas mais seus lucros começaram a divergir significativamente No final do período de teste os melhores resultados comerciais foram mostrados pelos consultores especializados com períodos 63, 53 e 43.O mercado escolheu os melhores Por que não deveríamos seguir a sua escolha E se combinássemos todas as dez estratégias num único Expert Advisor, oferecemos a possibilidade de negociação virtual para cada estratégia e periodicamente, por exemplo, no início do Cada nova barra determina a melhor estratégia para o comércio real e comércio de acordo com seus sinais. Os resultados da estratégia de adaptação obtidos são mostrados na Figura 2 A curva de equidade da conta com negociação adaptativa é mostrada com a cor vermelha Note que, durante Mais de metade do período, a forma de curva de patrimônio para a estratégia adaptativa é a mesma da estratégia MA63, que parece ter sido a vencedora finalmente. Figura 2 Curvas de equidade na conta com a estratégia adaptativa que usa sinais de Fig. 3 Curvas de equilíbrio da estratégia adaptativa que utiliza sinais de 10 sistemas de comércio. Se nenhuma das estratégias é rentável no momento, o anúncio Os sistemas aptos não devem realizar operações comerciais. O exemplo desse caso é mostrado no período da fig 4 de 4 a 22 de janeiro de 2010. Figura 4 O período em que a estratégia de adaptação parou de abrir novas posições devido à ausência de benefícios Estratégias. A partir de janeiro de 2010 a melhor eficácia é mostrado pela estratégia MA3 Desde o azul MA3 teve o montante máximo de dinheiro ganhado naquele momento, a estratégia de adaptação vermelho seguiu seus sinais No período de 8 a 20 de janeiro todos As estratégias consideradas tiveram um resultado negativo, isso é porque a estratégia adaptável não abriu posições novas do comércio. Se todas as estratégias tiverem um resultado negativo, é melhor permanecer afastado da troca Esta é a coisa significativa que permite parar negociar e manter não lucrativos Seu dinheiro save.2 Implementação da Estratégia de Negociação Adaptável. Nesta seção, vamos considerar a estrutura da estratégia adaptativa que executa a negociação virtual usando várias s Trategies simultaneamente, e escolhe o mais rentável para a negociação real de acordo com seus sinais Note que o uso da abordagem orientada a objeto torna a solução deste problema significativamente easier. First de todos nós vamos investigar o código da adaptação Expert Advisor , Então vamos dar uma olhada detalhada no CAdaptiveStrategy onde a funcionalidade do sistema adaptativo é implementada, e então vamos mostrar a estrutura da classe CSampleStrategy - a classe base das estratégias comerciais onde a funcionalidade do comércio virtual é implementada . Além disso, vamos considerar o código de dois de seus filhos - as classes CStrategyMA e CStrategyStoch que representam as estratégias de negociação por médias móveis e oscilador estocástico Depois de analisar sua estrutura você será capaz de escrever e adicionar facilmente suas próprias classes Que percebem as suas estratégias.2 1 Código do Expert Advisor. O código do Expert Advisor parece muito simples. Ines definir as propriedades do programa, em seguida, vem a diretiva include que informa o pré-processador para incluir o arquivo Critérios de ângulo especificar que o arquivo deve ser retirado do diretório padrão normalmente, é terminalfolder MQL5 Include. The próxima linha contém a declaração do AdaptiveExpert Objeto da classe CAdaptiveStrategy e o código das funções OnInit OnDeinit e OnTick do Expert Advisor consiste nas chamadas das funções correspondentes ExpertOnInit, ExpertOnDeInit e ExpertOnTick e o objeto AdaptiveExpert.2 2 A classe CAdaptiveStrategy. A classe do expert Advisor A classe CAdaptiveStrategy está localizada no arquivo Let s start com os arquivos de inclusão. A razão pela qual incluímos o arquivo é a conveniência de trabalhar com classes de estratégias diferentes usando o objeto da classe CArrayObj, que representa uma matriz dinâmica de ponteiros para a classe Instâncias geradas pela classe base CObject e seus filhos Este objeto será ma Neste caso, incluímos os arquivos que contêm as classes CStrategyMA e CStrategyStoch, que representam as estratégias de negociação por meio de médias móveis e de negociação por parte da empresa. Oscilador estocástico. Para solicitar propriedades de posições atuais e para executar operações comerciais, usaremos as classes CPositionInfo e CTrade da biblioteca Standard, por isso incluímos os arquivos e. Vamos dar uma olhada na estrutura da classe CAdaptiveStrategy. Para implementar uma abordagem unida aos objetos de diferentes classes, as estratégias comerciais ou melhor as instâncias de suas classes são armazenadas nas estratégias de matrizes dinâmicas do tipo CArrayObj, que é usado como um container de classes das estratégias. A classe de estratégias de comércio SampleStrategy é gerada a partir da classe CObject. A função ProceedSignalReal implementa a sincronização do Direção e volume de uma posição real com a direção dada e volume. Note que é mais fácil trabalhar com a posição de comércio usando as classes de comércio Nós usamos os objetos das classes de CPositionInfo e de CTrade para pedir as propriedades da posição de mercado e para executar o comércio Respectivamente. A função RealPositionDirection solicita os parâmetros da posição aberta real e retorna sua direção. Agora vamos dar uma olhada nas principais funções da classe AdaptiveStrategy. Vamos começar com a função ExpertOnInit. O conjunto de estratégias de negociação é Preparado na função ExpertOnInit Em primeiro lugar, é criado o objeto da matriz dinâmica mallstrategies. Neste caso, criamos dez instâncias da classe CStrategyMA Cada uma delas foi inicializada neste caso, definimos períodos diferentes e permitimos a negociação virtual usando o método Função de inicialização. Em seguida, usando a função SetStrategyInfo definimos o instrumento financeiro, o nome da estratégia e o comentário. Se necessário , Usando a função SetStops TP, SL podemos especificar um valor em pontos de Take Profit e Stop Loss, que serão executados durante a negociação virtual. Nós temos essa linha comentada. Uma vez que a classe de estratégia é criada e ajustada, nós a adicionamos Mallstrategies container. All classes de estratégias de comércio deve ter a função CheckTradeConditions que executa as verificações das condições de negociação Na classe da estratégia adaptativa esta função é chamada no início de cada nova barra, assim, damos às estratégias uma possibilidade de verificar os valores De indicadores e para fazer as operações comerciais virtuais. Em vez de dez médias móveis especificadas 3, 13, 23 93 podemos adicionar centenas de movimentação casos médias se a classe CStrategyMA. Ou podemos adicionar as classes de estratégia que funciona pelos sinais do Instâncias de oscilador estocástico da classe CStrategyStoch. Neste caso, o contêiner inclui 10 estratégias de médias móveis e 5 estratégias do oscilador estocástico. As estratégias de negociação devem ser as crianças da classe CObject e devem conter a função CheckTradeConditions É melhor herdá-las da classe CSampleStrategy As classes que implementam estratégias comerciais podem ser diferentes eo seu número não é limitado. A função ExpertOnInit termina com a lista Das estratégias que estão presentes no recipiente mallstrategies Observe que todas as estratégias no contêiner são consideradas como as crianças da classe CSampleStrategy As classes de estratégias comerciais CStrategyMA e CStrategyStoch também são seus filhos. O mesmo truque é usado na função ExpertOnDeInit Container, chamamos a função SaveVirtualDeals para cada estratégia que armazena o histórico de negócios virtuais executados. Usamos o nome da estratégia para o nome do arquivo que é passado como um parâmetro Então nós desinitializamos as estratégias chamando a função Deinitialization e excluindo o container mallstrategies. Se você não precisa saber sobre os negócios virtuais executar Ed pelas estratégias, remova a linha onde é chamado Note que ao usar o testador de estratégia os arquivos são salvar para o testerdirectory Arquivos diretório. Vamos considerar a função ExpertOnTick da classe CAdaptiveStrategy que é chamado cada vez que um novo carrapato vem. O código É muito simples Cada estratégia, localizada no contêiner deve ser capaz de recalcular o resultado financeiro atual de suas posições virtuais usando os preços atuais É feito chamando a função UpdatePositionData Aqui, mais uma vez chamamos as estratégias como os herdeiros da classe CSampleStrategy . Todas as operações comerciais são realizadas no início de uma nova barra a função IsNewBar permite determinar este momento, bem como os outros métodos de verificação de nova barra Neste caso, o fim de formação de uma barra significa que todos os dados da barra anterior Os preços e os valores dos indicadores não vão mudar mais, para que possa ser analisado sobre a correspondência com as condições de negociação a todas as estratégias que damos a oportunidade de perf Orm esta verificação e para executar suas operações de comércio virtual, chamando a sua função CheckTradeConditions. Agora devemos encontrar a estratégia mais bem sucedida entre todas as estratégias na matriz mallstrategies Para obtê-lo feito, usamos a matriz de desempenho, os valores que são retornados pela função StrategyPerformance De cada estratégia são colocados nele A classe base CSampleStrategy contém esta função como a diferença entre os valores atuais de Equidade virtual e Balance. A busca de índice da estratégia mais bem sucedida é realizada usando a função ArrayMaximum Se a melhor estratégia tem um lucro negativo No momento e não tem posições reais abertas, então é melhor não trocar, essa é a razão pela qual saímos da função ver seção 1. Além disso, pedimos a direção da posição virtual desta estratégia bestdirection Se ele Difere da direção atual da posição real, então a direção atual da posição real será corrigida usando o Procee DSignalReal função de acordo com a direção bestdirection.2 3 Classe CSampleStrategy. Strategies colocados no recipiente mallstrategies foram considerados como os herdeiros da classe CSampleStrategy. Esta classe é a base para as estratégias de comércio que contém a implementação do comércio virtual Neste artigo nós Irá considerar um caso simplificado de implementação de negociação virtual, os swaps não são considerados. As classes de estratégias comerciais devem ser herdadas da classe CSampleStrategy. Vamos mostrar a estrutura desta classe. Não vamos analisar sua descrição detalhada, informações adicionais podem Ser encontrada no arquivo Lá você também pode encontrar a função de verificar nova barra - IsNewBar.3 Classes of Trade Strategies. This seção é dedicada à estrutura de classes de estratégias de comércio que são usados ​​na adaptative Expert Advisor.3 1 Classe CStrategyMA - Estratégia de Negociação por Médias Móveis. A classe CStrategyMA é uma criança da classe CSampleStrategy onde todo o funct Estas são mhandle - handle do indicador iMA, mperiod - período da média móvel, mvalues ​​- array que será usado na classe da estratégia. CheckTradeConditions função para obter os valores atuais do indicador. A seção pública contém três funções que fornecem a implementação da estratégia de comércio. Function Inicialização A estratégia é inicializada aqui Se você precisa criar indicadores, criá-los here. Function Deinitialization A estratégia é deinitialized aqui As alças dos indicadores são liberadas aqui. Função heckTradeConditions Aqui, a estratégia verifica as condições de negociação e gera sinais de comércio que são usados ​​para o comércio virtual Para executar operações de comércio virtual, a função SetSignalState da classe pai do CStrategy é chamada uma das quatro Sinais de comércio são passados ​​para ele. O sinal para abrir uma posição longa O sinal para a abertura de uma posição curta SIGNALOPENSHORT. O sinal para fechar uma posição longa SIGNALCLOSELONG. O sinal para fechar uma posição curta SIGNALCLOSESHORT. O conceito é simples - com base nos estados indicadores e preços, o tipo de sinal newstate é determinado , Então o estado atual da negociação virtual é solicitado usando a função GetSignalState e se eles não são iguais, a função SetSignalState é chamada para corrigir a posição virtual.3 2 Classe CStrategyStoch - Estratégia de Negociação por Estocástica. Classe que executa negociação com base na intersecção das linhas principal e de sinal do oscilador iStochastic é dada abaixo. Como você vê, as únicas diferenças entre a estrutura da classe CStrategyStoch e a de CStrategyMA são a função de inicialização diferentes parâmetros, a Tipo de indicador usado e os sinais de comércio. Assim, para usar suas estratégias no conselheiro de especialistas adaptativo, você deve reescrever Os na forma de classes desse tipo e carregá-los para o container de estratégias estratégicas.4 Resultados da Análise das Estratégias de Comércio Adaptativo. Nesta seção, vamos discutir vários aspectos do uso prático das estratégias adaptativas e dos métodos de melhoria .4 1 Aprimorando o Sistema com Estratégias que Usam Sinais Inversos. Movendo As médias não são boas quando não há tendências Já vimos este tipo de situação - na figura 3, você pode ver que não houve tendência no período de 8 a 20 de janeiro, então todas as 10 estratégias que usam médias móveis na negociação tiveram uma perda virtual O sistema adaptativo parou de negociação como resultado da ausência de uma estratégia com quantidade positiva de dinheiro ganho Há alguma maneira de evitar tais negativos Vamos adicionar a nossas 10 estratégias MA3, MA13 MA93 outras 10 classes CStrategyMAinv cujos sinais de comércio são invertidas as condições são as mesmas, mas SIGNALOPENLONG SIGNALOPENSHORT e SIGNALCLOSELONG SIGNALCLOSESHORT trocado th Eir places Assim, além de dez instâncias de estratégias de tendência da classe CStrategyMA, temos outras dez instâncias de estratégias de contra-tendência da classe CStrategyMAinv. O resultado do uso do sistema adaptativo que consiste em vinte estratégias é mostrado na figura 5.Figura 5 Diagramas de eqüidade na conta da estratégia adaptativa que utiliza 20 sinais comerciais 10 médias móveis CAdaptiveMA e 10 espelhadas CAdaptiveMAinv. Como você pode ver na figura 5, durante o período em que todas as estratégias CAdaptiveMA tiveram um resultado negativo, As estratégias de CAdaptiveMAinv permitiram que o Expert Advisor evitasse as retiradas indesejadas no início da negociação. Figura 6 Período de tempo em que a estratégia adaptativa usou os sinais das estratégias de contra-tendência CAdaptiveMAinv. Esse tipo de abordagem pode parecer inaceitável, uma vez que perder o depósito é apenas um Questão de tempo quando se utiliza uma estratégia de contra-tendência No entanto, no nosso caso, não estamos limitados a uma única estratégia O mercado sabe melhor w Que estratégias são eficazes no momento. O lado forte dos sistemas adaptativos é o mercado sugere por si mesmo que estratégia deve ser usado e quando deve ser usado. Ele dá uma possibilidade de abstrair da lógica das estratégias - se uma estratégia é eficaz, Então a maneira que trabalha é de nenhuma importância A aproximação adaptativa usa o único critério do sucesso de uma estratégia - sua eficácia.4 2 Vale a pena inverter os sinais da estratégia a mais má. O truque com inversão mostrado acima conduz a um pensamento sobre A potencial possibilidade de usar os sinais da pior estratégia Se uma estratégia não é rentável e a pior nisso, então podemos obter um lucro agindo em sentido inverso. Podemos transformar uma estratégia perdedora em uma rentável por uma simples mudança de seu Para responder a esta pergunta, precisamos mudar ArrayMaximum com ArrayMinimum na função ExpertOnTick da classe CAdaptiveStrategy, bem como implementar a mudança de direções multiplicando o valor do BestDire Além disso, precisamos comentar a limitação da negociação virtual em caso de eficácia negativa, uma vez que vamos analisar o resultado da pior estratégia. Diagrama de equidade do especialista adaptativo Advisor que usa os sinais invertidos de A pior estratégia é mostrada na figura 7. Figura 7 Diagramas de equidade nas contas de dez estratégias eo sistema adaptativo que usa os sinais invertidos do pior sistema. Neste caso, a estratégia menos bem sucedida na maior parte do tempo foi a Um baseado na interseção de médias móveis com o período 3 MA3 Como você pode ver na figura 7, a correlação reversa entre MA3 azul colorido e a estratégia adaptativa vermelho colorido existe, mas o resultado financeiro do sistema adaptativo não impressiona. Sinais da pior estratégia não leva a melhorar a eficácia da negociação.4 2 Por que o grupo de médias móveis não é tão eficaz como seems. Instead de 10 médias móveis, você pode usar lotes Deles, adicionando mais uma centena de estratégias CStrategyMA com diferentes períodos para o contêiner mallstrategies. Para fazê-lo, alterar ligeiramente o código na classe CAdaptiveStrategy. No entanto, você deve entender que próximas médias móveis inevitavelmente se cruzam o líder mudará constantemente eo adaptivo O sistema mudará seus estados e abrirá as posições mais próximas do que é necessário. Como resultado, as características do sistema adaptativo se tornarão piores. Você pode se certificar disso sozinho, comparando as características estatísticas do sistema na guia Resultados do Estratégia tester. It s melhor não fazer sistemas adaptativos baseados em muitas estratégias com parâmetros próximos.5 O que deve ser considerado. O recipiente mallstrategies pode ter milhares de exemplos de estratégias sugeridas incluídas, você pode até mesmo adicionar todas as estratégias com parâmetros diferentes no entanto, Para ganhar o Automated Trading Championship 2010 você precisa desenvolver o sistema de gerenciamento de dinheiro avançado Em Note que usamos o volume de negociação igual a 0 lotes para testar dados de histórico e no código de classes.5 1 Como Aumentar a Rentabilidade do Especialista Adaptativo Advisor. A classe CSampleStrategy tem a função virtual MoneyManagementCalculateLots. To gerenciar o Volume para negociar, você pode usar a informação estatística sobre os resultados e as características dos negócios virtuais que são gravados na matriz de mdealshistory. Se você necessitar aumentar o volume por exemplo, dobrá-lo se os últimos negócios virtuais em mdealshistory são rentáveis ​​ou para Diminuindo-o, você deve mudar o valor retornado da forma correspondente.5 2 Usando as estatísticas de promoções para o cálculo do desempenho da estratégia. A função StrategyPerformance, implementada na classe CSampleStrategy destina-se ao cálculo do desempenho da estratégia. Uma estratégia pode ser mais complexa e, por exemplo, incluir a eficácia de entrar, sair, a eficácia dos negócios, Lucros, levantamentos, etc. O cálculo da efetividade da entrada, saída e efetividade das negociações dos campos de entrada, saída e negociação das estruturas da matriz mdealshistory é realizado automaticamente durante a negociação virtual. Veja a classe CSampeStrategy Esta informação estatística pode ser usada Para fazer suas próprias taxas, mais complexas da eficácia da estratégia. Por exemplo, como características de eficácia que você pode usar o lucro dos últimos três negócios use o campo posProfit do arquivo de ofertas mdealshistory. If você quiser alterar esta função, Alterá-lo somente na classe CSampleStrategy, ele deve ser o mesmo para todas as estratégias comerciais do sistema adaptativo. No entanto, você deve se lembrar que a diferença entre Equity e Balance também é um bom fator de eficácia.5 3 Usando Take Profit e Stop Loss. Você pode mudar a eficácia dos sistemas de negociação, definindo níveis de parada fixa que pode ser feito chamando a função SetStops que permite a configuração Os níveis de parada em pontos para negociação virtual Se os níveis são especificados, o fechamento de posições virtuais será executado automaticamente esta funcionalidade é implementada na classe CSampleStrategy. Em nosso exemplo veja 2 2, a função de classes de médias móveis, a função de configuração Stop é comentado.5 4 Zeroização Periódica do Lucro Virtual Cumulativo. A abordagem adaptativa tem a mesma desvantagem que as estratégias comuns têm Se a estratégia líder começa a perder, o sistema adaptativo começa a perder também É por isso que às vezes você precisa zeroizar o Resultados de trabalho de todas as estratégias e para fechar todas as suas posições virtuais. Para fazê-lo, as seguintes funções são implementadas na classe CSampleStrategy. CheckPoint deste tipo pode ser usado de vez em quando, por exemplo, após cada N bars. You deve se lembrar Que o sistema adaptativo não é um graal USDJPY H1, 4 01 2010-20 08 2010.Figura 8 Curvas de equilíbrio e patrimônio do sistema adaptativo que usa os sinais do E melhor das 10 estratégias USDJPY H1.As curvas de eqüidade de todas as estratégias são mostradas na figura 9. Figura 9 Curvas de equidade na conta com o sistema adaptativo baseado em 10 estratégias USDJPY H1.If não há estratégias rentáveis ​​no sistema adaptativo, Usando-os não é eficaz Use estratégias rentáveis. Devemos considerar outra coisa importante e interessante Preste atenção ao comportamento da estratégia adaptativa no início da negociação. Figura 10 Curvas de equidade na conta com 10 estratégias da estratégia adaptativa. Em primeiro lugar , Todas as estratégias tiveram resultados negativos ea estratégia adaptativa parou de negociação, em seguida, ele começou a alternar entre as estratégias que tiveram um resultado positivo e, em seguida, todas as estratégias tornou-se inútil novamente. Todas as estratégias têm o mesmo equilíbrio no início E só depois de um tempo, Ou outra estratégia se torna um líder, portanto, é recomendado para definir uma limitação na estratégia adaptativa para evitar a negociação nas primeiras barras Para fazê-lo, E ExpertOnTick função da classe CAdaptiveStrategy com uma variável, que valor é aumentado cada vez que uma nova barra vem. No início, até que o mercado escolhe a melhor estratégia, você deve ficar longe de trading. In real neste artigo, consideramos um Exemplo do sistema adaptativo que consiste em muitas estratégias, cada uma das quais faz suas próprias operações de comércio virtual O comércio real é realizado de acordo com os sinais de uma estratégia mais rentável no momento. Graças ao uso da abordagem orientada a objetos, as aulas de trabalho Com dados e classes de comércio da biblioteca Standard, a arquitetura do sistema parecia ser simples e escalável agora você pode facilmente criar e analisar os sistemas adaptativos que incluem centenas de estratégias de comércio. PS Para a análise de conveniência do comportamento de sistemas adaptativos, o Debug versão da classe CSampleStrategy é anexado ao arquivo A diferença desta versão é a criação de arquivos de texto durante o seu trabalho que contêm o su Relatórios sobre a dinâmica de mudança da equidade de equilíbrio virtual das estratégias incluídas no sistema. Estudos de Cursos. Estudos de Cálculo usam um estoque de movimentos de preços, volume e outras informações históricas para tentar encontrar padrões que podem indicar tendências de preços em mudança. Aprender o que um estudo particular pode estar indicando e, em seguida, aplicar esse estudo para os seus gráficos, você pode ser capaz de identificar oportunidades de negociação, pontos de apoio ou resistência a determinados limiares de preços, tendências de preços e símbolos more. Stock e dados de preço e volume mostrados Aqui e no software são apenas para fins ilustrativos Charles Schwab Co Inc, sua matriz ou afiliadas e / ou seus funcionários e / ou diretores podem ter posições em valores mobiliários referenciados neste documento e podem, como principal ou agente, comprar ou vender a clientes. Estudos para um gráfico a partir do painel Configurações do gráfico no lado direito da ferramenta Gráfico Você também pode clicar com o botão direito do mouse no gráfico e selecionar Adicionar Estudo Ou para mais informações sobre o uso de estudos no gráfico S, consulte os Estudos de Configurações de Gráfico. Obter uma demonstração e mais informações sobre Chart Studies. When selecionado com um gráfico intraday, uma linha será exibida indicando o dia anterior s fechar price. Uses o dia anterior alta, baixa e fechar preço para gerar um R1 R2 Este estudo só é exibido em gráficos Intraday Nas configurações de estudos clique com o botão direito do mouse sobre o estudo e selecione Editar, você pode verificar as linhas que você deseja ver R2, R1, Pivot, S1, S2.Pivot As linhas de ponto podem não estar visíveis, dependendo da escala de preços que você definiu nas configurações do gráfico e da discrepância de preço entre o dia de negociação anterior e o atual. Os pontos de pivô são calculados. Pivot YesterdaysHigh YesterdaysLow YesterdaysClose 3 0. S1 2 0 Pivot - YesterdaysHigh. R1 2 0 Pivot - YesterdaysLow. S2 Pivot - R1 - S1.R2 Pivot R1 - S1.Adaptive Índice de força relativa RSI. Adapta o RSI padrão para uma constante de suavização Padrão customizável de 14 períodos. Para fins de cálculo Ada Ptive RSI é um pouco semelhante a uma média móvel exponencial, mas em vez de calcular a média dos valores anteriores usando uma porcentagem fixa, ele usa uma porcentagem variável baseada no RSI. where e n é o período RSI, ou seja, um período n RSI. Money Flow mantém um O sentido da linha de Fluxo de Dinheiro é o componente importante a observar, não a quantidade real de dólares. Este indicador pode ser usado para confirmar a força subjacente ou a fraqueza de uma tendência de preços. A fórmula para Um Fluxo de Dinheiro de n-períodos é. Porcentagem de Fluxo de Dinheiro. Porcentagem de Fluxo de Dinheiro normaliza o cálculo do Fluxo de Dinheiro acima dividindo pelo volume cumulativo para o período Você pode alterar os períodos usados ​​no cálculo do padrão de 14. A fórmula de um n - Porcentagem de Fluxo de Dinheiro de Período é. Relação de Chamada de Pôr - Interesse Aberto. Mostra o número de puts dividido pelo número de chamadas com base em juros abertos para ações ou índices individuais. A relação é freqüentemente usada como um indicador de mercado contrário Significa que uma proporção alta pode ser um indicador de alta, enquanto uma proporção baixa é muitas vezes interpretada como um indicador de baixa. O estudo de relação de chamada de pôr pode exibir o valor de PC real, onde cada ponto de dados individuais representa os dados de chamada de put bruto ou o PC SMA Simples média móvel a média dos dados brutos durante o período de tempo selecionado do estudo. Disponível para gráficos diários, semanais e mensais para valores mobiliários opcionais. Índice de Força Relativa. Indica o grau de movimento positivo e negativo pelo estoque em uma escala de 0 Mais fraco a 100 mais forte Determinado por figurar a relação da média de fechamentos para os últimos 14 dias usando o preço atual de hoje para o dia 15 dividido pela soma da média de fechamentos e a média fechamentos para baixo para o mesmo período Esta proporção é multiplicada Por 100 Você pode alterar o número de períodos usados ​​no cálculo do padrão de 14, e você pode escolher qual Preço médio para basear o estudo em Fechar, Abrir, etc a partir do estudo settings. The inicial v Um RSI de período n é baseado na ação de preço para os primeiros n períodos. Os valores subseqüentes são determinados usando uma fórmula indutiva, análoga à fórmula EMA descrita anteriormente. A fórmula para o valor inicial de RSI é. Os valores de RSI são determinados usando a fórmula. True True Range. Measures uma segurança s volatilidade, calculando a média do True Range durante um período de tempo que você especificar ao configurar o estudo True Range é o maior dos seguintes. Baixo. O valor absoluto do atual alto menos o fechamento anterior. O valor absoluto do baixo atual menos o fechamento anterior. Predefinição customizável de 14 períodos. A fórmula ATR é uma média exponencial do verdadeiro intervalo O intervalo verdadeiro leva em conta qualquer intervalo up or down from the previous day as well as the high and low for the current day The formula is. where TR is the largest of the absolute values of High-Low , High-Yesterdays Close , and Yesterdays Close-Low. The Upper an d Lower lines are placed n-standard deviations above and below the Mid line simple moving average Since standard deviations are a measure of volatility, the bands widen during volatile price action and contract when volatility drops You can change the variables used in the calculation from the defaults of period 20 and n 2 standard deviations above and below. Rather than two bands that are always an equal percentage away from the central average, Bollinger Bands expand and contract based on the standard deviation of the historical volatility of the price action. The formulas for the upper and lower bands are. where m is the number of standard deviations and the formula for is. Implied Volatility Avg Calls Puts. The theoretical value in designed to represent the forecasted volatility of the security or index as determined by the prices of multiple call and put options using the Black-Scholes pricing model. Choose to view the Average of Puts Calls Avg , Average of Puts Puts , or Average of Cal ls Calls Also, choose whether to view actual implied volatility IV Actual or a simple moving average of implied volatility IV SMA Customizable default period for the IV SMA is 20.Implied Volatility studies are only available on daily, weekly, and monthly charts for optionable securities Implied Volatility values are computed using the Black-Scholes model and may not be available on all underlying securities The Schwab Avg Implied Volatility, Call - Implied Volatility, and Put - Implied Volatility, while based on the Robert E Whaley calculation, are derived using methods that may differ from those used by other data providers. The formula used in calculating this value is.2 in-the-money calls nearest to the current underlying price.2 in-the-money puts nearest to the current underlying price for the two nearest expiration months.2 out-of-the-money calls nearest to the current underlying price.2 out-of-the-money puts nearest to the current underlying price for the 2 nearest expiration mont hs 16.The formula used in calculating this value is.2 in-the-money calls puts nearest to the current underlying price for the two nearest expiration months.2 out of the money calls puts nearest to the current underlying price for the two nearest expiration months 8.Keltner Channels consist of two bands that are not equidistant from the EMA. Rather than two bands that are always an equal percentage away from the EMA, Keltner Channels expand and contract based on a moving average of the True Range TR. Customizable default of 20 periods, 10 ATR Average True Range Periods, and an ATR factor of 2.The formulas for the upper and lower bands are. where F is a factor. Use SSPro4 calculation StreetSmart Edge uses the modern calculation for Keltner Channels, which uses EMA rather than SMA as the signal line However, if you want Keltner Channels to continue using SMA as the signal line, check this box. True Range is the greatest of the following. The current high minus the current low. The absolute value of the current high less the previous close. The absolute value of the current low less the previous close. On Balance Volume OBV. This indicator relates volume to price changes by adding volume to a running total when the price closes up for a period, then subtracts the volume if the stock closes down for a period You can overlay the study on or underneath the price chart.

No comments:

Post a Comment