Qualquer pergunta de novato, de modo a não desorganizar o fórum. Profissionais, não passem por aqui. Em nenhum lugar sem você - 6. - página 369

 
Link_x:
Olá!
Hmmm, como eu prendo uma linha a um indicador criando seu código?
Encontrei uma função no livro de referência, que define um objeto.
Descobri também como definir as propriedades.
Eu tentei programá-lo.
O resultado - 5 erros.
Eu gostaria de ver um exemplo de como um objeto OBJ_HLINE é definido.
Obrigado!


Ou você está acostumado a ter que apresentar tudo em um prato?

aqui leia

p.s. O código de exemplo e a descrição sob estas palavras está errada:

Usando a fonte Wingdings

Agora vamos criar etiquetas usando a fonte Wingdings. Vamos mudar a função start():

 
Ekburg:


Você não está claro com sua pergunta... se você tivesse inserido o código corretamente, você poderia ter explicado a confusão que está tendo).

mas vamos ver o que podemos fazer


Residente de Sverlovsk, pela aparência?
 
Vinin:

Sverlovenian, eu presumo?

Sim, eu sou).
 
SpikeOne:

Por favor, ajude-me, será que eu entendo como este código funciona corretamente?

Coloquei-a na EA em um determinado lugar e ela começa a fechar todas as encomendas após atingir 715,

Tenho apenas um problema, em alguns lugares, porque colei este código começa uma confusão, talvez alguém me diga o que está errado:



Comecei agora mesmo a analisar seu código e já posso ver que sua arquitetura de código está quebrada...

Não expondo adequadamente os suportes de caracóis, corrigi-los, e talvez o problema seja resolvido

P.S. Não quero dizer uma exposição visual onde sempre, e misturado abrir e fechar parênteses ... por exemplo, no primeiro bloco de se no final do local de fechamento, você Fig. parênteses abrir outro bloco, isso é por causa desta confusão surge

 
SpikeOne:

Por favor, ajude-me, será que eu entendo como este código funciona corretamente?

Coloquei-a na EA em um determinado lugar e ela começa a fechar todas as encomendas após atingir 715,

Ainda tenho um problema com ele, em alguns lugares ele fica confuso quando colo o código, talvez alguém possa me dizer o que está errado:



Instale a última construção no terminal, é mais fácil escrever código lá, menos provável de cometer erros, aconselho!:)

Corrigida a parte que enviou no início, sem a última parte de parênteses que não está claro por que é necessário...

if ( AccountProfit()+ AccountBalance()>=715)
   {
   for(int zx=OrdersTotal(); zx+1>=0; zx--)
      {
      if(OrderSelect(zx,SELECT_BY_POS,MODE_TRADES)==true)
      OrderDelete(OrderTicket());
      }
   }
while (OrdersTotal()>0)
   {
   if(OrderSelect(0,SELECT_BY_POS,MODE_TRADES))
      {
      if(OrderType()==OP_BUY) result=OrderClose(OrderTicket(),OrderLots(),NormalizeDouble(MarketInfo(OrderSymbol(),MODE_BID),MarketInfo(OrderSymbol(),MODE_DIGITS)),3,CLR_NONE);
      if(OrderType()==OP_SELL) result=OrderClose(OrderTicket(),OrderLots(),NormalizeDouble(MarketInfo(OrderSymbol(),MODE_ASK),MarketInfo(OrderSymbol(),MODE_DIGITS)),3,CLR_NONE);
      if (OrderType()==OP_BUYLIMIT || OrderType()==OP_BUYSTOP || OrderType()==OP_SELLLIMIT || OrderType()==OP_SELLSTOP)
      OrderDelete(OrderTicket());
      if(result!=TRUE)
         {
         er=GetLastError();
         Print("LastError = ",er, " ",Symbol());
         }
      else er=0;
      }
   else Print( "Error when order select ", GetLastError());
   }
 

Caros camaradas, amigos! É difícil expressar o quanto sou grato por sua ajuda anterior para escrever a EA (no final da 350ª página deste tópico). Agora preciso novamente de sua ajuda, e espero que você a faça novamente.

Portanto, preciso escrever o seguinte no meu EA:

A EA deve trabalhar nos extremos da EMA. Nas altas da EMA, deve colocar ordens pendentes para abrir uma posição curta a um preço igual ao preço da baixa da vela muvinig de inversão menos uma certa porcentagem desse preço (por exemplo, a baixa da vela de inversão * 0,99) A ordem pendente também deve conter um stop loss e ter lucro como porcentagem daquela muito baixa da vela muvinig de inversão. Mas isso não é tudo. Também se o EMA máximo for atingido, o EA deve colocar as paradas de perda em todos os anseios abertos para este ativo no mesmo nível em que o curto deve ser aberto. Assim, quando o preço estimado for atingido (ver acima), os longos existentes devem ser fechados (usando o stop losses previamente estabelecido pela EA) e os shorts devem ser abertos.

Em um EMA baixo, o contrário é verdadeiro: há uma vela, onde o muving apareceu. Na vela seguinte, a EA deve começar a seguir o preço e quando este exceder o seguinte nível: o alto da vela de inversão + uma certa porcentagem (por exemplo, o alto da vela de inversão * 1,01), os calções abertos existentes devem colocar um stop loss a este preço (o alto da vela de inversão + uma certa porcentagem) e uma ordem pendente para abrir um longo pelo mesmo preço (com um stop loss e ter lucro em % do alto da vela de inversão).

Assim, o conselheiro em uma inversão do muvning (queremos dizer uma inversão completa, ou seja, a inversão das duas velas anteriores, a vela atual não é levada em conta, o muvning pode ser invertido na barra atual, mas não irá reverter sobre ela, estas inversões durante o muvning atual, se no resultado do fechamento da inversão da barra não for - não contar).

Portanto, se o muving estiver no máximo, o consultor especializado deve colocar um Stop Loss nos longs existentes em um determinado nível (ver acima) e abrir uma ordem pendente para abrir um short no mesmo nível (com um Stop Loss e Take Profit).

Se o muving for baixo, é vice-versa - a EA coloca uma parada de perda nos calções abertos em um determinado nível (ver acima) e coloca uma ordem pendente para abrir uma posição longa no mesmo nível (com parada de perda e lucro).

Assim, não será possível ir a dinheiro, estaremos sempre em uma posição longa, ou em uma posição curta. Ao fechar uma posição longa, abrimos simultaneamente uma posição curta, e vice versa.

Eu tentei brincar com meu EA de trabalho (funciona atravessando dois EMAs) e modificá-lo de maneira correta. Mas meu fraco conhecimento de C++ e minha aversão à programação falharam. Aqui está o link para o Expert Advisor que tentei modificar para o desejado: https://www.mql5.com/ru/code/8463?source=terminal4_codebase

Entendo que preciso de muita ajuda, não é uma tarefa fácil, por isso, como bônus, darei os resultados de minha pesquisa de BTC/USD (bitcoins/dólares) de troca btc-e àqueles que me ajudaram. Determinei a média móvel mais apropriada (ter menos sinais falsos e acionar bons movimentos), os melhores parâmetros para ela (a porcentagem de altas/baixas de vela de inversão), os take-profits mais apropriados. Calculei isso em Excel. Este arquivo Excel é de mim, como sinal de gratidão. Talvez seja útil para você.

Não quero apenas negociar usando este Expert Advisor. Eu preciso dele para monitorar o mercado quando não o estou acompanhando (porque não posso acompanhá-lo 24 horas por dia). Quando estou no monitor, troco por linhas de apoio/resistência de acordo com certa metodologia, mas o sistema EMA também me ajuda - para determinar pontos de ruptura de níveis, estabelecendo paradas.

Estou esperando por ajuda para escrever um EA e estou confiando nele.

 
okidoki543:

Caros camaradas, amigos! É difícil expressar o quanto sou grato por sua ajuda anterior para escrever a EA (no final da 350ª página deste tópico). Agora eu preciso novamente de sua ajuda, espero que você a dê novamente.

Ohhhh!?:) Apenas uma ordem para escrevê-lo)
 
okidoki543:

Portanto, preciso prescrever o seguinte na EA:

A tarefa é bastante exequível, em princípio nem precisa ser escrito muito código... se ao menos houvesse tempo para fazê-lo...:)
 
Eu não sei como inserir uma citação normal, eu a coloco desta forma, manualmente: [citação] A tarefa é bastante viável, em princípio você não precisa nem mesmo escrever muito código... seria o momento para isso... :)[/ citação] Eu ficaria grato se você pudesse ajudar.
 
okidoki543:
Eu não sei como inserir uma citação normal, pondo assim, manualmente: [citação] A tarefa é bastante exequível, em princípio nem mesmo um monte de código para escrever seria o momento de fazê-lo...:)[/ citação] Eu ficaria grato se você ajudasse.


Se eu puder, vou pular o código hoje... Não tenho certeza se estará funcionando já que estou no trabalho e não tenho tempo de escrever um programa de depuração... Mas será um ponto de partida, com certeza)

Mas não posso prometer... como as circunstâncias vão funcionar hoje)