Ajuda na codificação - página 10

 

Alerta de e-mail RSI

Olá programadores,

realmente grato se alguém pudesse acrescentar um alerta por e-mail para complementar o alerta existente. Ele só deve enviar um e-mail durante a barra de preços atual quando o nível RSI for atingido na primeira vez (para que eu não fique inundado de e-mails se ele saltar para cima e para baixo durante a barra de preços). Eu tenho conhecimentos de programação de zilch mql, portanto qualquer ajuda seria fantástica.

tudo de bom,

malcolm

Arquivos anexados:
rsi_alert.mq4  3 kb
 
m1nich:
Olá programadores,

realmente grato se alguém pudesse acrescentar um alerta por e-mail para complementar o alerta existente. Ele só deve enviar um e-mail durante a barra de preços atual quando o nível RSI for atingido na primeira vez (para que eu não fique inundado de e-mails se ele saltar para cima e para baixo durante a barra de preços). Eu tenho conhecimentos de programação de zilch mql, portanto qualquer ajuda seria fantástica.

tudo de bom,

malcolm

Oi Malcolm,

Tente aqui https://www.mql5.com/en/forum/180648

post# 2928

 

Alerta de e-mail RSI

Olá Sr.Tools,

Wunderbar!

tudo de bom

 

Indicador com erros

Olá codificadores,

encontrei este indicador. Ele é bom para o comércio manual. O indicador mostra o ponto de equilíbrio de várias ordens. Infelizmente, ele tem vários erros. Alguém pode corrigir isto?

Adicionar novo recurso?

Se eu alterar o tp ou sl com uma ordem, que é sl e tp das outras ordens são automaticamente alteradas (como e-MoveSLTPbyMouse.mq4).

Obrigado!

Desculpe pelo meu inglês ruim !

Arquivos anexados:
 
rajivzzz:
Hi

Qualquer um sabe como criar um indicador para um EA eu tenho este indicador, mas posso perder muitas vezes uma posição melhor para sair, entrar e tirar lucro porque eu não fiquei sentado na frente do PC toda vez, mas ele funciona muito bem, em cada período de tempo em qualquer par no mercado natural. é que qualquer um me ajuda nele ou em qualquer lugar onde eu possa configurá-lo para o EA para comércio de robôs.

Veja

LINHA VERMELHA é uma boa posição de venda

GREEN LINE é uma boa posição de compra

Linha de centro TAKE PROFIT

Posso mostrar alguns de meus negócios no Eur/Usd no gráfico 1H com linhas cor-de-rosa, todos fechados em lucros.

Quero que trabalhos como este da EA sejam vendidos na linha vermelha, TP na linha central, TP na linha verde, TP na linha central.

Hi

Acho que é possível e posso ajudar. A codificação de uma EA tem que atender a certas condições. Me peçam para mais discussões.

Obrigado.

 
rvvidhul:
Especialistas gentilmente codificam um indicador MT4 para a tabela anexa, com base no pivô Heikin Ashi e no sistema de balanço NMA.

Aqui está o código Afl para este gráfico, qualquer um pode converter esta Fórmula em um indicador Metatrader.

_SECTION_BEGIN("NMA Swing Explorer");

SetBarsRequired(200,0);

GraphXSpace = 5;

SetChartOptions(0,chartShowArrows|chartShowDates);

k = Optimize("K",Param("K",2,0.25,5,0.25),0.25,5,0.25);

Per= Optimize("atr",Param("atr",20,3,20,1),3,20,1);

HACLOSE=(O+H+L+C)/4;

HaOpen = AMA( Ref( HaClose, -1 ), 0,5 );

HaHigh = Max( H, Max( HaClose, HaOpen ) ); HaHigh = Max( H, Max( HaClose, HaOpen )

HaLow = Min( L, Min( HaClose, HaOpen ) ) );

if( ParamToggle("Plot Heikin-Ashi", "No,Yes", 1 ) )

PlotOHLC( HaOpen, HaHigh, HaLow, HaClose, "Heikin Ashi" + Nome(), colorBlack, styleCandle );

mais

Lote( C, "Velas Regulares" + Nome(), colorBlack, styleCandle );

j=Haclose;

//================================================================================================================

//=========================Indicator=================================================================================

f=ATR(15);

rfsctor = WMA(H-L, Per);

revers = k * rfsctor;

Tendência = 1;

NW[0] = 0;

for(i = 1; i < BarCount; i++)

{

if(Tendência == 1)

{

if(j < NW)

{

Tendência = -1;

NW = j + Inversões;

}

senão

{

Tendência = 1;

if((j - Inversões) > NW)

{

NW = j - Inverte;

}

senão

{

NW = NW;

}

}

}

if(Tendência == -1)

{

if(j > NW)

{

Tendência = 1;

NW = j - Inversões;

}

senão

{

Tendência = -1;

if((j + Inversões) < NW)

{

NW = j + Inversões;

}

senão

{

NW = NW;

}

}

}

}

//===============system================

Plot(NW, "", IIf(Trend == 1, 27, 4), 4);

Buy=Cover=Cross(j,nw);

Sell=Short=Cross(nw,j);

SellPrice=ValueWhen(Sell,C,1);

BuyPrice=ValueWhen(Buy,C,1);

Long=Flip(Compra,C,1); Preço de Compra=Valor Quando(Compra,C,1); Preço de Venda=Valor

Shrt=Flip(Vender,C,1); Compra=Flip(Vender,C,1);

NMAB= NW<HACLOSE;

NMAS= NW>HACLOSE;

NMA_status= WriteIf(NMAB, "BUY MODE", WriteIf(NMAS, "SELL MODE", "NEUTRAL"));

NMAS_Col=IIf(NMAB, colorGreen, IIf(NMAS, colorRed, colorLightGrey));

Filter=1;

AddColumn( NW, "SAR", 1.2 );

AddColumn( HACLOSE, "HA Close", 1.2 ); AddColumn( HACLOSE, "HA Close", 1.2 );

AddColumn( C, "Close", 1.2 ); AddColumn( C, "Close", 1.2 );

AddTextColumn(NMA_status, "MODE", 1, colorWhite, NMAS_Col);

_SECTION_END();

//=================TITLE===========================================================================================

_SECTION_BEGIN("Título");

if( Status("ação") == actionIndicator )

(

Título = EncodeColor(colorWhite)+ "NICK MA Swing System" + " - " + Nome() + " - " + EncodeColor(colorRed)+ Intervalo(2) + EncodeColor(colorWhite) +

" - " + Data() +" - "+"\n" +EncodeColor(colorRed) +"Op-"+O+" "+"Hi-"+H+" "+"Lo-"+L+" "+

"Cl-"+C+" "+ "Vol= "+ WriteVal(V)+"\n "+

EncodeColor(colorLime)+

WriteIf (Comprar , " GO LONG / Reverse Signal at "+C+" ",""")+

WriteIf (Sell , " EXIT LONG / Reverse Signal at "+C+" ",""")+"\n "+EncodeColor(colorWhite)+

WriteIf(Sell , "Total Profit/Loss for the Last Trade Rs. "+(C-BuyPrice)+"","")+

WriteIf(Buy , "Total Profit/Loss for the Last trade Rs. "+(Sell PriceC)+"","")+

WriteIf(Long AND NOT Buy, "Comércio : Long - Preço de Entrada Rs. "+(Preço de Compra),")+

WriteIf(shrt AND NOT Sell, "Trade : Short - Entry price Rs. "+(SellPrice),")+"\n "+

WriteIf(Long AND NOT Buy,"Current Profit/Loss Rs. "+(C-BuyPrice)+"","")+

WriteIf(shrt AND NOT Sell, "Current Profit/Loss Rs. "+(SellPrice-C)+"","));

PlotShapes(IIf(Compra, shapeSquare, shapeNone),colorGreen, 0, L, Offset=-40);

PlotShapes(IIf(Compra, shapeSquare, shapeNone),colorLime, 0,L, Offset=-50);

PlotShapes(IIf(Compra, shapeUpArrow, shapeNone),colorWhite, 0,L, Offset=-45);

PlotShapes(IIf(Venda, shapeSquare, shapeNone),colorRed, 0, H, Offset=-40);

PlotShapes(IIf(Vender, shapeSquare, shapeNone),colorOrange, 0,H, Offset=-50);

PlotShapes(IIf(Venda, shapeDownArrow, shapeNone),colorWhite, 0,H, Offset=-45);

_SECTION_END();

 
rajivzzz:
eu não compartilhei mais

repintar ,LOL

Funciona como o HolyGrial

se você não soubesse como isso funciona, você não poderia fazer nada por mim.

Que cara legal e inteligente!!!!!!!!!!!!!!!!!!!!!!!!

 

Oi, Laurus, você só precisa trocar a ordem dos amortecedores. Mt4 exibir buffer 3 um topo de buffer 2 em cima de buffer 1 etc.

 

Ordem dos indicadores por camada de objeto

Eu tenho este clássico MACD com histograma onde o histograma é desenhado em frente ao MACD e linhas de sinal. Alguém poderia me mostrar como colocar o Histograma na parte de trás? Tentei descobri-lo, mas sem sucesso.

Obrigado,

Laurus

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

//| _MACD.mq4 | _MACD.mq4 | _MACD.mq4

//| |

//| O MACD Clássico com Histograma |

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

//---- definições de indicadores

#janela_indicadora de propriedade_separarate_window

#property indicator_buffers 3

#Indicador de propriedade_color1 Preto

#indicador de propriedade_color2 Vermelho

#Indicador de propriedade_color3 SteelBlue

#largura_do_indicador de propriedade1 1

#largura_do_indicador de propriedade2 1

#largura_do_indicador de propriedade3 2

//---- parâmetros indicadores

externo int FastEMA=12;

externo int SlowEMA=26;

extern int SignalEMA=9;

//---- buffers indicadores

duplo MACD_Buffer[];

duplo SIGNAL_Buffer[];

duplo HISTOGRAM_Buffer[];

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

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

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

int init() {

//---- definições de desenho

SetIndexStyle(0,DRAW_LINE);

SetIndexStyle(1,DRAW_LINE);

SetIndexStyle(2,DRAW_HISTOGRAM);

SetIndexDrawBegin(1,SignalEMA);

IndicatorDigits(Dígitos+1);

//---- indicator buffers mapping

SetIndexBuffer(0,MACD_Buffer);

SetIndexBuffer(1,SIGNAL_Buffer);

SetIndexBuffer(2,HISTOGRAM_Buffer);

//---- nome para DataWindow e subwindow label do indicador

IndicatorShortName("_MACD ("+FastEMA+", "+SlowEMA+", "+SignalEMA+")")

SetIndexLabel(0, "MACD");

SetIndexLabel(1, "Signal");

SetIndexLabel(2, "Histograma");

//---- inicialização feita

retorno(0);

}

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

//| Médias móveis Convergência/Divergência |

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

int start() {

int i;

limite int;

int counted_bars = IndicatorCounted();

if(counted_bars < 0) return(-1); //---- verificar possíveis erros

se(counted_bars > 0) counted_bars--; //---- a última barra contada será recontada

limite = Barras - contadas_barras;

//---- Desenhar linha MACD

for(i=0; i<limit; i++) {//-- loop from the current bar to the first bar

MACD_Buffer = iMA(NULL,0,FastEMA,0,MODE_EMA,PRICE_CLOSE,i) - iMA(NULL,0,SlowEMA,0,MODE_EMA,PRICE_CLOSE,i);

}

//---- Linha de Sinal de Desenho e Histograma

for(i=0; i<limit; i++) {//-- mesmo laço acima

SIGNAL_Buffer = iMAOnArray(MACD_Buffer,Bars,SignalEMA,0,MODE_EMA,i);

HISTOGRAM_Buffer = MACD_Buffer - SIGNAL_Buffer;

}

//---- Feito

retorno(0);

}

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

 
christinaLi:
Oi, Laurus, você só precisa trocar a ordem dos amortecedores. Mt4 exibir buffer 3 um topo de buffer 2 em cima de buffer 1 etc.

Grande CristinaLi! Muito obrigado por sua resposta e ajuda. Foi isso mesmo. Funciona perfeitamente agora

Caso alguém deseje tê-lo com o histograma no verso, anexei o arquivo.

- Laurus

Arquivos anexados:
_macd.mq4  3 kb
Razão: