Dukascopy Jforex Api Documentation




Dukascopy Jforex Api DocumentationDesejo usar jForexAPI para criar uma estrategia. Eu codifiquei muitas linhas no MT4 e, mas ja estou perdido com o seu jForex api. So ajudam a ver que e um PDF muito breve. Existem foruns para compilacoes do dds Qual plataforma de desenvolvimento eu uso para criar arquivos do dds Onde estao os varios exemplos do dds Como criar um arquivo dds, apenas atraves de bloco de notas. O bloco de notas nao e bom para o desenvolvimento de script, entao existe algo mais. Tudo o que eu quero fazer e um script que ira colocar uma perda de parada e lucro alvo e, em uma condicao, comecar uma parada posterior depois de colocar uma ordem de mercado. Assim, como um script de criacao de pedido automatico, salva-me fazendo o gerenciamento de comercio. Entao eu preciso de recursos de exemplo ou um codificador para me ajudar. Qualquer ajuda seria otimo. Embora a Duskacopy tenha uma ferramenta para construir uma ponte da MT4 para a plataforma Dukascopy, o problema e que o armazenamento de dados MT4 geralmente nao e completamente confiavel. Portanto, provavelmente e melhor programar a estrategia com a API Jforex usando Dukascopy Datafeed. Aqui esta a documentacao para quem esta interessado: o pdf que voce listou. Eles nao dizem nada sobre como construir um script para sua plataforma java. Dukas esta dizendo que o bloco de notas e a plataforma de desenvolvimento, bem, nao pode ser, como e que alguem teste o script e depura-o. Sua plataforma de negociacao java nao possui depurador de codigo ou escritor. Nao consigo nem uma lista de exemplos. NOt mesmo um forum apoiado por dukas para ajudar os construtores de estrategia. Talvez seja eu, e nao sou muito bom no google. Foram as ferramentas, os recursos, os foruns, os exemplos, etc. Question Dukascopy - Estrategia JForex Alguem reescreveu um famoso scalper EA na JForex Strategy e vendendo. O teste de volta parece otimo e o teste avancado em DEMO parece excelente tambem. Qualquer um experimentou com o JForex. Qual a diferenca entre as suas contas DEMO e REAL, quao confiaveis ??os resultados dos testes de volta: Alguem reescreveu um EA Scalper famoso na Estrategia JForex e vendendo. O teste de volta parece otimo e o teste avancado em DEMO parece excelente tambem. Alguem experiente com o JForex Como a diferenca entre a sua DEMO e a REAL contam quao confiaveis ??seus resultados de teste de volta eu negocia com o Jforex. O melhor com eles e que eles tem um feed de dados. Tambem para executar a estrategia e muito facil e tenho certeza de que este e um lugar certo para negociar com estrategia automatica. Estudando a anatomia de uma estrategia JForex vazia (Parte 1 e Parte 2), e hora de dissecar um trabalho. MAPlay e a estrategia que esta incluida em cada download da JForex API como demonstracao. Voce pode encontrar o codigo-fonte completo desta estrategia no srcsinglejartest no pacote compactado da API JForex. Lembre-se de que o primeiro metodo de interface que e executado no inicio da estrategia e OnStart. O metodo OnStart do MAPlay e reproduzido abaixo. As variaveis ??motorizadas. Indicadores. E console sao campos da classe MAPlay. Sao variaveis ??globais dentro da classe. O que as linhas 42 a 44 fazem e salvar o IEngine. IIndicadores. E os objetos IConsole para uso posterior. A ultima linha do OnStart, linha 45, e apenas para imprimir uma mensagem no seu console do programa JForex para notificar o usuario de que a estrategia comecou. Uma vez que o OnStart tenha terminado o processamento, o servidor provavelmente encaminhara onTick se um cheque de mercado chegar. Se nao for durante as horas de mercado, entao nao ha marca e algum outro evento pode acontecer em vez de onTick. Pense nos metodos como eventos em vez de um processo linear. Voce programa sua estrategia JForex de acordo com o que voce quer fazer com cada um dos seis eventos IStrategy Interface. Para esta estrategia particular, o programador decide implementar sua estrategia no nivel de selecao. Como tal, grande parte do algoritmo de negociacao reside em onTick para MAPlay. Observe que esta e uma escolha de design, voce pode usar o OnBar se desejar que sua estrategia seja processada no nivel da barra (ou voce pode usar o OnTick e o OnBar). Heres o codigo-fonte para onTick no MAPlay. De uma aparencia, voce pode notar que as variaveis ??ma0 e ma1 desempenham um papel fundamental na determinacao da configuracao. Dica: para reverter a engenharia de uma estrategia, pode ser mais facil trabalhar para tras quando a ordem e colocada, o que e feito pelo engine. submitOrder neste caso. Ma0 e ma1 possuem resultados de medias moveis exponenciais (EMA). Ma0 e o valor atual. Ma1 e o valor das barras anteriores. Linhas 56--63 verificam usando testes IF (linhas 56 e 60) para ver se qualquer uma das variaveis ??contem dados invalidos. Se os dados forem invalidos, o indicador sera calculado e o resto do onTick sera ignorado com a declaracao de retorno na linha 62. Nota: Os valores dos indicadores as vezes podem ser invalidos (zero, negativo ou Double. NaN., Dependendo da implementacao do indicador particular ) Se nao houver dados suficientes para calcular ou ocorrer um erro, por exemplo. Os EMAs sao obtidos nas linhas 57 e 59 usando o objeto IIndicators (que foi inicializado em onStart). O JForex Wiki fornece uma explicacao sobre seu uso. Observe que ma1 e uma matriz, que foi declarada na linha 38 com um tamanho equivalente ao numero de todos os instrumentos JForex disponiveis. Em particular, e usado com um valor de indice especial como no ma1instrument. ordinal (). Em outras palavras, esta pedindo o slot de instrumentos atual na matriz ma1. O instrumento atual e aquele que e passado para o metodo na linha 55. Deslizando o codigo, outro ponto de interesse e a linha 65, mostrando o uso de instrument. getPipValue (). A linha 67 verifica se o numero total atual de posicao e zero. Se for, o que significa que nao ha posicao aberta, a estrategia prossegue para verificar o sinal de entrada para entrar em um comercio (linhas 68-76). PositionsTotal () e um metodo personalizado definido nas linhas 84--92. Ele usa um loop FOR para percorrer todos os pedidos obtidos do engine. getOrders (instrumento) Uma vez que uma das condicoes longas ou curtas, linhas 68 e 72, respectivamente, sao atendidas, a estrategia envia um pedido nas linhas 69 para um curto e Linha 73 por um longo periodo. As especificacoes de submeter ordens de mercado sao descritas no Wiki JForex. Quando voce interrompe essa estrategia, onStop (linhas 48-53) e chamado. Para esta estrategia, o programador rola todas as ordens novamente usando engine. getOrders () e fecha cada uma das posicoes com um comando order. close () na linha 50. E por essa estrategia trivial. Se houver um ponto que voce deve lembrar. Observe meu uso dos muitos links para JForex javadoc e JForex Wiki ao longo desta publicacao. E provavel que voce encontre muitas das suas respostas dessas duas fontes. Caso contrario, ha sempre o JForex Support Board. Agora que voce teve uma ideia de como o MAPlay. java funciona, e hora de testa-lo. Na proxima publicacao em janeiro, discutiremos o JForex Historical Tester e o que observar quando estiver executando uma estrategia ao vivo. Examinamos quatro dos seis metodos na interface IStrategy em uma publicacao anterior. Os dois ultimos metodos, onTick e onBar, sao onde sua estrategia se conecta com os dados do mercado. Um ou ambos, esses metodos, e onde voce colocou seu algoritmo de negociacao. Sua estrategia seria capaz de processar os dados de mercado a medida que eles chegam a um tickbar de cada vez. Lembre-se de que a IStrategy Interface e o esqueleto da sua estrategia. E esse objeto IContext e o coracao de sua estrategia. OnTickonBar e o chefe de sua estrategia, que contem seu algoritmo de negociacao, que e o cerebro. Heres a definicao de metodo de onTick. Importante: onTick e chamado para todos e cada um dos instrumentos em que a sua plataforma JForex esta inscrito (a lista de instrumentos na sua caixa de espaco de trabalho). Deixe-me dizer isso novamente, onTick e chamado para todos e cada um dos instrumentos em que a sua plataforma JForex esta inscrito. A pratica padrao e filtrar os carrapatos para instrumentos que voce nao deseja com uma simples declaracao de retorno IF. Se (instrumento myInstrument) retornar Os dados do tick real sao passados ??para sua estrategia usando o objeto ITick do parametro de metodos OnTick. De uma olhada na entrada ITick javadoc para ver o que oferece. OnBar funciona de forma semelhante a onTick. No qual onBar e chamado para todos e cada um dos instrumentos subscritos e periodo conhecido por JForex. Da mesma forma, voce deve filtrar todos os instrumentos e periodos indesejados, ou entao havera resultados esperados da sua estrategia. Outro ponto a observar e que o OnBar fornece tanto um IBar como um AskBar e IBar bidBar, representando as barras de solicitacao e oferta. Pergunta: o que acontece quando dois ou mais periodos se sobrepoem, como em 13:45 as barras de 1, 5 e 15 minutos estao chegando ao mesmo tempo (sem mencionar os periodos em segundos tambem). Resposta: De acordo com o Suporte Dukascopy no forum, eles vem em uma ordem rigida, por exemplo (1min 1min 1min 1min 1min 5min 1min 1min 1min 1min 1min 5min.) Eles vem em ciclos, onde periodos menores chegam em primeiro lugar. Forum de suporte do JForex A medida que voce programa sua estrategia com o JForex, voce, sem duvida, encontrara perguntas proprias. O melhor lugar para perguntar e no forum oficial de suporte JForex. Este e o ultimo dos tres recursos JForex essenciais aos quais eu aludi anteriormente. Mesmo que voce nao tenha nenhuma pergunta especifica, existem exemplos de codigos, discussoes de codificacao e centenas de QampA existentes de outros desenvolvedores JForex postados no forum. A discussao ate agora tem sido muito alta. Para mostrar o que voce pode realmente fazer em um IStrategy, vamos dissecar uma estrategia de trabalho na proxima publicacao. E o que mais e melhor examinar do que a estrategia JForex mais popular de todos eles - MAPlay. java. Continuando na Parte 1 desta serie: Comecando a aprender a programacao JForex. Agora estavam prontos para discutir o real. Voce cria estrategias JForex usando a interface IStrategy (O que e uma interface). Basicamente, uma interface e um esqueleto de codigo com um conjunto de metodos vazios predefinidos que voce precisara implementar. Os seis metodos padrao da IStrategy Interface sao: Abaixo esta uma implementacao da IStrategy Interface vazia, tambem conhecida como estrategia JForex. Este codigo ira compilar bem no JForex e voce pode ate executa-lo. Mas nao faz nada porque nao ha codigo para executar em cada um dos metodos. Cada um dos seis metodos sera chamado e saira imediatamente. Cada um dos metodos e desencadeado por um evento especifico. Voce provavelmente pode adivinhar o que eles sao de seu nome. OnStart (linha 5) Este e o primeiro metodo chamado quando voce executa sua estrategia. Ele sera executado uma vez e apenas uma vez no inicio da sua estrategia. Normalmente, voce faz sua inicializacao aqui. A coisa a observar para onStart esta na linha 5 do codigo. A assinatura do metodo de onStart e O objeto no parametro e dado a voce neste metodo e um objeto IContext. Se IStrakie e o esqueleto, o IContext e o coracao da estrategia. Por favor, veja este link do javadoc para o IContext para ver o que esse objeto faz. Javadoc. Agora e um bom momento para apresentar o segundo dos tres recursos essenciais de um programador JForex. O JForex Javadoc e a documentacao da API mais atualizada que explica todos e cada um dos objetos e metodos da API JForex. Pense nisso como um manual de referencia. Note-se que, embora seja abrangente, a maior parte da explicacao e muito esparsa e possivelmente incompleta. O IContext e um objeto JForex central para acessar muitos componentes importantes do sistema JForex, como o mecanismo de pedidos, graficos, consoles, indicadores. Voce consegue a ideia. E importante Voce normalmente deseja manter uma copia local, pois esta e a unica vez (em onStart) que esse objeto sera passado para voce no IStrategy. OnStop (linha 26) Como o nome sugere, este metodo e chamado uma vez que voce envia um comando de parada para sua estrategia. Voce faz o encerramento do seu programa, como o registro e a descarga de dados aqui. Nao muito fora do comum com este. OnMessage (linha 18) Enquanto sabemos quando onStart e onStop serao chamados, onMessage e um metodo assincrono em que voce nao sabe exatamente quando ele sera executado. Esse metodo e chamado quando o servidor Dukascopy envia sua estrategia para uma mensagem. Por exemplo, o servidor chama onMessage para que voce saiba que seu pedido foi preenchido. Voce recebe e processa a mensagem do servidor acessando o objeto IMessage que e passado para voce. Importante: nao ha garantia de que voce recebera todas e cada uma das mensagens enviadas para a sua estrategia a partir do servidor. Talvez seu processo de estrategia esteja obstruido. Ou talvez sua conexao com a internet tivesse um soluco. Se a sua estrategia onMessage nao for chamada pelo servidor por qualquer motivo, o servidor nao poderia se importar menos e nao estara checando nem tentando novamente. Entao, nao faca nada critico, como gerenciar suas ordens no onMessage onAccount (linha 22). Esse metodo e chamado sempre que a atualizacao de informacoes da sua conta e recebida. O metodo fornece acesso ao objeto IAccount. Que voce usa para obter as informacoes da sua conta. Diga se voce tem uma posicao aberta, as informacoes da sua conta mudam em cada tiquetaque porque seu patrimonio liquido e um lucro liquido nao realizado em dinheiro. Nesse caso, onAccount e chamado a cada 5 segundos pelo servidor no maximo para evitar inundar sua estrategia. Mais importante: o objeto IAccount nao esta conectado ao vivo em sua conta no servidor. E apenas um instantaneo da sua conta. Por exemplo, se voce mantiver uma copia local de um objeto IAccount. Faca algumas negociacoes para alterar seu saldo. Em seguida, peca a mesma conta IAccount para informacoes de saldo da conta, voce nao vera uma alteracao. Como tal, sempre atualize sua copia local do IAccount dentro do metodo onAccount para manter as informacoes da sua conta atualizadas para o uso de suas estrategias. Para continuar os metodos onStart, onStop, onMessage e onAccount sao metodos administrativos para sua estrategia. Os dois ultimos metodos que bem discutem, onTick e onBar, e onde a magia acontece em uma estrategia. Estou guardando o melhor para o ultimo na proxima publicacao. O maior problema que tive ao aprender a programar minhas proprias estrategias de negociacao no JForex e descobrir onde comecar a aprender. Havia pouca documentacao JForex disponivel no momento e eu tive que me ensinar atraves de tentativas e erros dificeis com a ajuda do suporte tecnico da Dukascopys. As coisas certamente mudaram para melhor enquanto uma comunidade JForex esta comecando a brotar e a documentacao e pelo menos suficiente para que alguem comece. Este post e o primeiro de uma serie de iniciantes rapidos a orientar a aprendizagem da programacao JForex, colocando todos esses recursos em um tutorial. JForex e uma ferramenta Java O JForex na verdade nao e uma linguagem de programacao. E uma interface de programacao de aplicativos (API) para usar com a linguagem de programacao Java padrao. Como tal, o primeiro passo para aprender a programar no JForex e aprender Java. Felizmente, Java e uma das linguagens de programacao mais populares. Entao, ha muitos recursos dentro e fora da web para aprender a programacao Java. Alguns exemplos de tutoriais on-line gratuitos sao: Os Tutoriais Java - Este e um tutorial oficial do desenvolvedor de Java. Altamente recomendado. Tutorial para iniciantes em Java - Mais orientado para iniciantes absolutos para a programacao. Se voce preferir um livro, eu recomendaria Head First Java, 2nd Edition. Eu escovei meu Java a partir deste livro. Nao hesite em Java, porem, como voce so precisa saber o basico para comecar com o JForex. Basta ler alguns capitulos para entender a sintaxe do Java e depois seguir em frente. Voce sempre pode se referir a eles mais tarde. Mergulhar no JForex O JForex Wiki e um dos tres recursos essenciais para os programadores JForex. Vou me referir a algumas paginas especificas do Wiki em grande parte dessa serie de postagens. Se voce ainda nao fez isso, inscreva-se para uma conta DEMO na Dukascopy. Em seguida, inicie a plataforma JForex e siga as instrucoes na pagina Utilizar no wiki JForex para montar sua primeira estrategia JForex Ate agora tao bom. Por esse ponto, espero que voce possa entender o codigo-fonte Java basico e saber como startopen, compilar e executar um Estrategia JForex. Na proxima publicacao nesta serie JForex de aprendizagem, estudaremos a anatomia de uma estrategia JForex. O maior problema que tive quando aprendi a programar minhas proprias estrategias de negociacao no JForex e descobrir por onde comecar a aprender. Havia pouca documentacao JForex disponivel no momento e eu tive que me ensinar atraves de tentativas e erros dificeis com a ajuda do suporte tecnico da Dukascopys. As coisas certamente mudaram para melhor enquanto uma comunidade JForex esta comecando a brotar e a documentacao e pelo menos suficiente para que alguem comece. Este post e o primeiro de uma serie de iniciantes rapidos a orientar a aprendizagem da programacao JForex, colocando todos esses recursos em um tutorial. JForex e uma ferramenta Java O JForex na verdade nao e uma linguagem de programacao. E uma interface de programacao de aplicativos (API) para usar com a linguagem de programacao Java padrao. Como tal, o primeiro passo para aprender a programar no JForex e aprender Java. Felizmente, Java e uma das linguagens de programacao mais populares. Entao, ha muitos recursos dentro e fora da web para aprender a programacao Java. Alguns exemplos de tutoriais on-line gratuitos sao: Os Tutoriais Java - Este e um tutorial oficial do desenvolvedor de Java. Altamente recomendado. Tutorial para iniciantes em Java - Mais orientado para iniciantes absolutos para a programacao. Se voce preferir um livro, eu recomendaria Head First Java, 2nd Edition. Eu escovei meu Java a partir deste livro. Nao hesite em Java, porem, como voce so precisa saber o basico para comecar com o JForex. Basta ler alguns capitulos para entender a sintaxe do Java e depois seguir em frente. Voce sempre pode se referir a eles mais tarde. Mergulhar no JForex O JForex Wiki e um dos tres recursos essenciais para os programadores JForex. Vou me referir a algumas paginas especificas do Wiki em grande parte dessa serie de postagens. Se voce ainda nao fez isso, inscreva-se para uma conta DEMO na Dukascopy. Em seguida, inicie a plataforma JForex e siga as instrucoes na pagina Utilizar no wiki JForex para montar sua primeira estrategia JForex Ate agora tao bom. Por esse ponto, espero que voce possa entender o codigo-fonte Java basico e saber como startopen, compilar e executar um Estrategia JForex. Na proxima publicacao nesta serie JForex de aprendizagem, estudaremos a anatomia de uma estrategia JForex.