Ajuda na codificação - página 294

 
mladen:
airquest

Você deve levá-lo em conta, caso contrário não funcionará bem

A melhor maneira de chamar indicadores com tal parâmetro é o seguinte :

iCustom(NULL,targetTimeFrame,indicatorName,",...,buffer,shift);

Portanto, use "" para esse parâmetro

Obrigado Mladen, como sempre, você é muito útil.

 

alguém seria capaz de fazer este gráfico indicador na abertura da barra quando presente? a versão na TradeStation traçará um gráfico indicador de prazo maior (quando presente) na barra de prazo menor antes do preço realmente negociar através do valor. no entanto, na versão MT4 este não é o caso, e ele não será traçado até que o preço tenha sido negociado através dele.

muito obrigado,

Scott

***

#janela_do_cartão_indicador de propriedade

#property indicator_buffers 2

#Indicador de propriedade_color1 Branco

#indicador de propriedade_color2 Branco

//# indicador de propriedade_largura1 5

//# indicador de propriedade_largura2 5

//---- parâmetros de entrada

/************************************************** ***********************

PERÍODO_M1 1

PERÍODO_M5 5

PERÍODO_M15 15

PERÍODO_M30 30

PERÍODO_H1 60

PERÍODO_H4 240

PERÍODO_D1 1440

PERÍODO_W1 10080

PERÍODO_MN1 43200

Você deve usar o valor numérico do período de tempo que você deseja usar

quando você define o valor do TimeFrame com as entradas do indicador.

************************************************** ************************/

TempoFrame externo int = 240;

Exterior int num = 6;

cor externa Cor = Branco;

duplo vftop[];

duplo vfbot[];

//+------------------------------------------------------------------+

//| Função de inicialização do indicador personalizado |

//+------------------------------------------------------------------+

int init()

{

//---- indicadores

IndicatorBuffers(2);

SetIndexBuffer(0, vfbot);

SetIndexStyle(0, DRAW_LINE, STYLE_SOLID, 5, Color);

// SetIndexArrow(0, 117);

SetIndexEmptyValue(0, 0);

SetIndexBuffer(1, vftop);

SetIndexStyle(1, DRAW_LINE, STYLE_SOLID, 5, Color);

// SetIndexArrow(1, 117);

SetIndexEmptyValue(1, 0);

switch(TimeFrame)

{

caso 1 : string TimeFrameStr="Period_M1"; pausa;

caso 5 : TimeFrameStr="Period_M5"; pausa;

caso 15 : TimeFrameStr="Period_M15"; pausa;

caso 30 : TimeFrameStr="Period_M30"; pausa;

caso 60 : TimeFrameStr="Period_H1"; pausa;

caso 240 : TimeFrameStr="Period_H4"; pausa;

caso 1440 : TimeFrameStr="Period_D1"; pausa; caso 1440 : TimeFrameStr="Period_D1"; pausa;

case 10080 : TimeFrameStr="Period_W1"; pausa;

case 43200 : TimeFrameStr="Period_MN1"; pausa;

padrão : TimeFrameStr="Current Timeframe";

}

IndicatorShortName("MTF_VolumeFinder ("+TimeFrameStr+")");

//----

retorno(0);

}

//+------------------------------------------------------------------+

//| Função de desinicialização de indicador personalizada |

//+------------------------------------------------------------------+

int deinit()

{

//----

//----

retorno(0);

}

//+------------------------------------------------------------------+

//| Função de iteração de indicador personalizada |

//+------------------------------------------------------------------+

int start()

{

int counted_bars=IndicatorCounted();

int i = Barras - Barras_contadas;

if(counted_bars == 0) i = Barras - num*2;

int j = 0;

duplo t1, t2;

int y = 0;

while(i >= 0)

{

y = iBarShift(Symbol(), TimeFrame, Time);

t1 = iLow(Símbolo(), TimeFrame, y);

t2 = iHigh(Símbolo(), TimeFrame, y);

for(j = y+1; j < y + num; j+++)

{

t1 = MathMax(t1, iLow(Symbol(), TimeFrame, j)));

t2 = MathMin(t2, iHigh(Symbol(), TimeFrame, j)));

}

if(t1 <= t2)

{

vftop = t2;

vfbot = t1;

}

i--;

}

//----

retorno(0);

}

//+------------------------------------------------------------------+

 
scott TTM:
alguém seria capaz de fazer este gráfico indicador na abertura da barra quando presente? a versão na TradeStation irá traçar um gráfico indicador de prazo maior (quando presente) na barra de prazo menor antes do preço realmente negociar através do valor. no entanto, na versão MT4 este não é o caso, e ele não irá traçar até que o preço tenha sido negociado através dele.

muito obrigado,

Scott

***

#janela_do_cartão_indicador de propriedade

#property indicator_buffers 2

#Indicador de propriedade_color1 Branco

#indicador de propriedade_color2 Branco

//# indicador de propriedade_largura1 5

//# indicador de propriedade_largura2 5

//---- parâmetros de entrada

/************************************************** ***********************

PERÍODO_M1 1

PERÍODO_M5 5

PERÍODO_M15 15

PERÍODO_M30 30

PERÍODO_H1 60

PERÍODO_H4 240

PERÍODO_D1 1440

PERÍODO_W1 10080

PERÍODO_MN1 43200

Você deve usar o valor numérico do período de tempo que você deseja usar

quando você define o valor do TimeFrame com as entradas do indicador.

************************************************** ************************/

TempoFrame externo int = 240;

Exterior int num = 6;

cor externa Cor = Branco;

duplo vftop[];

duplo vfbot[];

//+------------------------------------------------------------------+

//| Função de inicialização do indicador personalizado |

//+------------------------------------------------------------------+

int init()

{

//---- indicadores

IndicatorBuffers(2);

SetIndexBuffer(0, vfbot);

SetIndexStyle(0, DRAW_LINE, STYLE_SOLID, 5, Color);

// SetIndexArrow(0, 117);

SetIndexEmptyValue(0, 0);

SetIndexBuffer(1, vftop);

SetIndexStyle(1, DRAW_LINE, STYLE_SOLID, 5, Color);

// SetIndexArrow(1, 117);

SetIndexEmptyValue(1, 0);

switch(TimeFrame)

{

caso 1 : string TimeFrameStr="Period_M1"; pausa;

caso 5 : TimeFrameStr="Period_M5"; pausa;

caso 15 : TimeFrameStr="Period_M15"; pausa;

caso 30 : TimeFrameStr="Period_M30"; pausa;

caso 60 : TimeFrameStr="Period_H1"; pausa;

caso 240 : TimeFrameStr="Period_H4"; pausa;

caso 1440 : TimeFrameStr="Period_D1"; pausa; caso 1440 : TimeFrameStr="Period_D1"; pausa;

case 10080 : TimeFrameStr="Period_W1"; pausa;

case 43200 : TimeFrameStr="Period_MN1"; pausa;

padrão : TimeFrameStr="Current Timeframe";

}

IndicatorShortName("MTF_VolumeFinder ("+TimeFrameStr+")");

//----

retorno(0);

}

//+------------------------------------------------------------------+

//| Função de desinicialização de indicador personalizada |

//+------------------------------------------------------------------+

int deinit()

{

//----

//----

retorno(0);

}

//+------------------------------------------------------------------+

//| Função de iteração de indicador personalizada |

//+------------------------------------------------------------------+

int start()

{

int counted_bars=IndicatorCounted();

int i = Barras - Barras_contadas;

if(counted_bars == 0) i = Barras - num*2;

int j = 0;

duplo t1, t2;

int y = 0;

while(i >= 0)

{

y = iBarShift(Symbol(), TimeFrame, Time);

t1 = iLow(Símbolo(), TimeFrame, y);

t2 = iHigh(Símbolo(), TimeFrame, y);

for(j = y+1; j < y + num; j+++)

{

t1 = MathMax(t1, iLow(Symbol(), TimeFrame, j)));

t2 = MathMin(t2, iHigh(Symbol(), TimeFrame, j)));

}

if(t1 <= t2)

{

vftop = t2;

vfbot = t1;

}

i--;

}

//----

retorno(0);

}

//+------------------------------------------------------------------+

Você pode postar o código original da estação de comércio?

 

Procurei-a, mas não consigo encontrá-la. Comprei o indicador em 2004.

 
scott TTM:
Procurei-a, mas não consigo encontrá-la. Comprei o indicador em 2004.

Eu perguntei desde que eu gostaria de comparar o código - às vezes o código de linguagem fácil parece ser uma tarefa simples de converter para metatrader mas as diferenças são muito grandes para ser 100% em alguns casos que a conversão é feita como deveria

 

Pls Me ajude

oi

Você poderia, por favor, ajudar a Fazê-la funcionar para o MT4 Build 600+

Obrigado de antemão!

Arquivos anexados:
sap_robot.mq4  32 kb
forexhacked.mq4  19 kb
 

WPR_MA bug

Oi mladen!

Posso dar uma pequena ajuda na codificação?

Eu, mais ou menos, escrevi um indicador que é uma média de 4 outros WPR em uma janela indicadora.

Se você carregar o modelo, você pode ver a diferença entre o MA em WPRs.

Superior é o indicador, inferior é misturado manualmente. O objetivo é, fazer o manual para um indicador.

Minha pergunta: por que ela está fazendo isso? Onde eu codifiquei errado o WPR_MA.

Obrigado pelo seu tempo.

Adledion

Arquivos anexados:
 
adledion:
Oi mladen!

Posso pedir um pouco de ajuda na codificação?

Eu, mais ou menos, escrevi um indicador que está com uma média de 4 outros WPR em uma janela indicadora.

Se você carregar o modelo, você pode ver a diferença entre o MA em WPRs.

Superior é o indicador, inferior é misturado manualmente. O objetivo é, fazer o manual para um indicador.

Minha pergunta: por que ela está fazendo isso? Onde eu codifiquei errado o WPR_MA.

Obrigado pelo seu tempo.

Adledion

Adledion

No modelo ma é aplicado a apenas um WPR (WPR(50) no caso desse modelo). Você não pode aplicar ma a múltiplos indicadores e é por isso que existe uma diferença entre seu indicador e modelo

Experimente - defina todos os períodos de WPR em seu indicador para 50 e compare os valores do indicador com o valor anterior de ma no modelo (anterior desde que você use shift one no indicador para iMAOnArray() ) e você verá que você está tendo exatamente os mesmos valores nesse caso

 
mladen:
Adledion

No modelo ma é aplicado a apenas um WPR (WPR(50) no caso desse modelo). Você não pode aplicar ma a múltiplos indicadores e é por isso que existe uma diferença entre seu indicador e modelo

Experimente - defina todos os períodos de WPR em seu indicador para 50 e compare os valores do indicador com o valor anterior de ma no modelo (anterior desde que você use shift one no indicador para iMAOnArray() ) e você verá que você está tendo exatamente os mesmos valores nesse caso

Uau, obrigado, não cavou tão fundo

editar: e isso significa que, na mistura manual, o ma está apenas em um dado do primeiro indicador wpr? então basicamente o manual está errado (calculando um wpr ma), comparado à minha idéia original, que é calcular 3 ou 4 wpr ma.

 

Mladen ,

Estou um pouco confuso, estes 2 indicadores estão repintando? https://www.mql5.com/en/forum/172895

O que são esses histogramas que você conhece? Obrigado.

Arquivos anexados:
forexmtn.mq4  3 kb
rd-combo.mq4  11 kb
Razão: