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

 
Roman.:


Desculpe, não percebi... :-)))

Eu verifiquei várias vezes - sem erros, tudo estritamente de acordo com as fórmulas.

Aparentemente, é necessário dividir o produto em partes e depois compará-las. Leia mais - aqui.

Já passei por isso. Interessante. Eu tenho uma idéia. Escreverei na linha sobre o assunto.

 
MaxZ:

Você copiou o código inteiro ou apenas o que estava na função de início()? É importante!

Você entendeu errado! :)) Por exemplo, o zig-zag não tem todos os elementos de amortecedor preenchidos. Além disso, não é necessário preencher todos os elementos tampão nos ícones.


A cópia parece estar completa...

Estranho! Se eu escrevesse um código como este:

tampão[1]=aberto[1];

tampão[3]=aberto[3];

nada acontece na tabela

 
wolf05632:


Copiei-o completamente...

Estranho! Se eu escrevesse um código como este:

tampão[1]=aberto[1];

tampão[3]=aberto[3];

nada acontece na tabela


Nesse caso, você tem que ver todo o código.
 
wolf05632:


A cópia parece estar completa...

Estranho! Se eu escrevesse um código como este:

tampão[1]=aberto[1];

tampão[3]=aberto[3];

nada acontece na tabela

Neste caso, você deve mudar

SetIndexStyle (0,DRAW_LINE,STYLE_SOLID,2);// Стиль линии

para

SetIndexStyle (0, DRAW_SECTION);

Caso contrário, serão traçadas linhas semicerradas, ou linhas saltarão de zero ou para cima na tabela e voarão de volta a zero ou para cima novamente (dependendo do valor que você der aos elementos pulados no buffer)! :D

Afinal de contas, meu código funcionou para você?

 

Obrigado! Vou tentar novamente... Sim! Está funcionando, obrigado! Apenas um pouco obscuro sobre o significado desta linha:

if (MathMod(Bars, 2) != 0 && Counted_bars == 0)
      return(0);
 
wolf05632:

Obrigado! Vou tentar novamente... Sim! Está funcionando, obrigado! Só não entendo um pouco o significado desta linha:

if (MathMod(Bars, 2) != 0 && Counted_bars == 0)
      return(0);

Deixe-me explicar.

Aplicamos o indicador a um gráfico. Primeiro executa a função init(), ela é executada.

Em seguida, a função start() é executada. Como nenhuma das barras foi calculada ainda, a função retornará zero para a variável Barras_Contadas.

IndicatorCounted(); // Количество просчитанных баров

retornará zero.

Isso significa que a condição

if (MathMod(Bars, 2) != 0 && Counted_bars == 0)
      return(0);

não será cumprido, e o indicador calculará todas as barras do símbolo ao qual foi aplicado.

Após o cálculo, a execução da função start() estará concluída e o indicador aguardará a chegada de um novo tick.

Quando um novo tick chega, a função começa() será executada novamente. Na variável Counted_bars, a função

IndicatorCounted(); // Количество просчитанных баров

devolverá o número de barras contadas.

Isto significa que a condição

if (MathMod(Bars, 2) != 0 && Counted_bars == 0)
      return(0);

já pode ser cumprida, ou seja, esta condição será cumprida quando não precisarmos de uma barra e quisermos ignorá-la na contagem da função start().

 

Boa noite. Tenho duas perguntas:

Gostaria de perguntar se há alguém neste fórum que está desenvolvendo uma estratégia baseada no indicador Ishimoku e usa um tempo inferior a uma hora, por exemplo, 5 ou 15 minutos?

2. Terekhov A. Ishimoku Indicator.djvu livro contém o capítulo "Indicador Ishimoku e Castiçais Japoneses" onde está escrito que o indicador deve confirmar as configurações do castiçal. Então, estas configurações de velas devem estar presentes enquanto o indicador dá um sinal ou pode haver algumas barras entre estes dois eventos? Isto é, cruzar tenkan e kinjun e no mesmo momento deve haver um "martelo" ou não é obrigatório?

 

Olá a todos, sou um novato e tenho uma pergunta - se eu abrir uma ordem de acordo com este esquema

bool externo Comprar = verdadeiro;

duplo PriceBuy externo = 0;

int start()
{
if (Comprar)
{OrderSend(Symbol(),OP_BUY,0.01,Ask,3,Bid-50*Point,Ask+50*Point);
PriceBuy = ;}

return;
}
O que devo especificar nos pontos de interrogação para atribuir a variável priceBuy ao valor do preço de compra do pedido? O objetivo é atribuir este valor uma vez e ele não mudará à medida que o programa avança.

E mais uma - Como mudar programmaticamente o prejuízo de uma ordem já aberta?



 
OTPOK:

Olá a todos, sou um novato e tenho uma pergunta - se eu abrir uma ordem de acordo com este esquema

bool externo Comprar = verdadeiro;

duplo PriceBuy externo = 0;

int start()
{
se (Comprar)
{OrderSend(Symbol(),OP_BUY,0.01,Ask,3,Bid-50*Point,Ask+50*Point);
PriceBuy = ??????????????????;}

retornar;
}
O que devo especificar sob os pontos de interrogação para atribuir à variável PriceBuy o valor do preço de compra do pedido? O objetivo é atribuir este valor uma vez e ele não mudará à medida que o programa avança.

Mais uma pergunta - como mudar programmaticamente a perda de estoque em uma ordem aberta?




extern bool Buy = true;
extern double PriceBuy = 0; 
int start() 
{
   if(Buy) 
   {
     int ticket=OrderSend(Symbol(),OP_BUY,0.01,Ask,3,Bid-50*Point,Ask+50*Point);
     if(OrderSelect(ticket,SELECT_BY_TICKET,MODE_TRADES))
        PriceBuy=OrderOpenPrice();
   }
   return(0); 
}
 
OTPOK:


O que devemos especificar abaixo os pontos de interrogação para atribuir a variável priceBuy ao valor do preço de compra do pedido? O objetivo é atribuir este valor uma vez e ele não mudará à medida que o programa avança.

E mais uma coisa - Como posso mudar programmaticamente a perda de uma ordem já aberta?




Boa tarde. Eu entendo que você nunca atribuiu valores a variáveis. É muito fácil de fazer.

PriceBuy=Ask

E você tem que mudar a perda de carga usando a função OrderModifity().

Use a ajuda do MetaEditor.

Adeus.

Razão: