Indicadores de múltiplos períodos de tempo - página 1131

 

HI, alguém sabe se existe uma versão MTF do indicador PVT??(tendência de preço e volume)...Eu sei que existe uma zona dinâmica PVT, mas não é MTF...

Obrigado por qualquer ajuda....

 

oi mladen....

ajude-me a fazer sua versão mtf.......

thank's u....

Arquivos anexados:
 

oi mladen

queira acrescentar opção de turno a este indicador.

é mtf-ma.e tem opção de turno, mas não funciona corretamente.quero dizer que ele dosta (transporte) o indicador no final do gráfico.

Muito obrigado por sua ajuda.

Arquivos anexados:
MTF-MA.mq4  2 kb
 
yoppy:

oi mladen....

ajude-me a fazer sua versão mtf.......

obrigado u....

yoppy

Aqui está a versão multitemporal

Arquivos anexados:
 
rartec4:

oi mladen

queira acrescentar opção de turno a este indicador.

é mtf-ma.e tem opção de turno, mas não funciona corretamente.quero dizer que ele dosta (transporte) o indicador no final do gráfico.

Muito obrigado por sua ajuda.

Altere o código para o seguinte :

#property indicator_chart_window
#property indicator_buffers 1
#property  indicator_color1 Red
#property  indicator_width1 1 

input ENUM_TIMEFRAMES MA_TF=PERIOD_M30;
extern int MA_Period = 20;
extern int MA_ma_shift = 0;
extern ENUM_MA_METHOD MA_method_ = MODE_EMA;
extern ENUM_APPLIED_PRICE MA_applied_price_ = PRICE_CLOSE;
 
double MABuf[];

//~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

void init()
{
  SetIndexBuffer(0, MABuf);
  SetIndexStyle(0, DRAW_LINE);
  SetIndexEmptyValue(0, 0.0);
  SetIndexDrawBegin(0, MA_Period);
  MA_TF = MathMax(MA_TF,_Period);
  SetIndexShift(0,MA_ma_shift*MA_TF/_Period);
}

void deinit()
{
}

void start()
{
  int counted_bars = IndicatorCounted();
  if(counted_bars < 0) return;
  if(counted_bars > 0) counted_bars--;

  int limit = Bars-counted_bars;
  limit += MA_TF/Period();

  for (int i=limit; i >= 0; i--)
  {
    int shift = iBarShift(NULL, MA_TF, Time[i], true);
    if (shift == -1) continue;
    
    MABuf[i] = iMA(NULL, MA_TF, MA_Period, 0, MA_method_ , MA_applied_price_, shift);
  }
}
 

Olá, pessoal

encontrei este indicador em uma linha da fábrica de câmbio.

de acordo com o usuário, precisamos usá-lo em diferentes períodos de tempo.

Então, você pode adicionar mtf nele, por favor?


Obrigado.

Arquivos anexados:
 
DRADIS33:

Olá, pessoal

encontrei este indicador em uma linha da fábrica de câmbio.

de acordo com o usuário, precisamos usá-lo em diferentes períodos de tempo.

Então, você pode adicionar mtf nele, por favor?


Obrigado.

DRADIS33

Precisa de arquivo de código fonte (mq4) para fazer alguma coisa com ele.

 
mntiwana:

DRADIS33

Precisa de arquivo de código fonte (mq4) para fazer alguma coisa com ele.

Obrigado, vou tentar encontrá-lo.
 
DRADIS33:
Obrigado, vou tentar encontrá-lo.

Experimente este aqui

Arquivos anexados:
 

Prezado mladen,

Espero que você esteja muito bem.

Tentei fazer uma base EA no indicador ZZ. Eu poderia abrir a ordem de compra quando os indicadores ZZ receberem um valor; mas a ordem não está fechada...

Você pode me ajudar?

Obrigado em adiantado...


int MagicN =1453;

int exterior Barras=5; // Cantidad de barras
int externo y =5;
//--------------------------------------------------------------------
Lotes duplos externos = 0,01;
duplo slippage externo = 3;
duplo período externo1 = 5;
cordão externo Dev_Step_1 ="0,5";
símbolo externo int Symbol_1_Kod =140;

//--------------------------------------------------------------------
bool GV_Flag_NuevaBarra=false; // Flag de una nueva barra
//======================================================================

int start() // Diversão especial start()
{
//--------------------------------------------------------------------
Fun_NuevaBarra(); // Chamada de função
if (GV_Flag_NuevaBarra==false) // Si no hay nueva barra...
retornar; // ...retornar
//=========================================================================
int IndMin =ArrayMinimum(Baixo,Barras,1);
int IndMax =ArrayMaximum(Alto,Barras,1);
duplo ZZ, CC;

double Buy=Low[IndMin];
duplo XX=Alto[IndMax];

ZZ=iCustom(Symbol(),0, "3_Level_ZZ_Semafor",Period1,Dev_Step_1,Symbol_1_Kod,0,y);
CC=iCustom(Symbol(),0, "3_Level_ZZ_Semafor",Period1,Dev_Step_1,Symbol_1_Kod,1,y);

se (Buy === ZZ)
{
Alerta(Símbolo(),": Barras= ",Barras,", ZZ= ",DoubleToString(ZZ,Dígitos),", Precio= ",DoubleToString(Compra,Dígitos) );

int ticket=OrderSend(Symbol(),OP_BUY,Lots,Ask,Slippage,0,0, "Jeaa",MagicN,0,Blue);

Imprimir ("Orden de Compra enviada: xxxx");// falta colocar el OrderTicket()
}
//=========================================================================

se (XX == CC)

{
if(OrderMagicNumber()== MagicN)
{ ///---- check order type
if(OrderType()==OP_BUY)
{
OrderClose(OrderTicket(),OrderLots(),Bid,3,White);

Alerta(Símbolo(),": Barras= ",Barras,", CC= ",DoubleToString(CC,Dígitos),", Precio= ",DoubleToString(XX,Dígitos) );

Imprimir ("=====ORDEN CERRADA=====");
}
}
}
//=============================================================================
retornar;
}
//=========================================================================

void Fun_NuevaBarra() // Descripción de la Funcion que detecta ...
{ // ... una nueva barra
datatempo estático NewTime=0; // variável que almacena fecha y hora
GV_Flag_NuevaBarra=falso; // Inicializa nueva barra a falso (no hay nueva barra)
if(NewTime!=Time[0]) // Si existe nueva barra el dato es distinto de cero.
{
NewTime=Time[0]; //... y en ese caso se registra el hora y fecha de la...
GV_Flag_NuevaBarra=true; //nueva barra y se ativa el flag que señaliza la...
//existencia de una nueva barra

}
}
//--------------------------------------------------------------------

Razão: