Como codificar? - página 204

 

MT-4, por favor, me ajude.

MT-4- Por favor, me ajude, quero fazer uma interseção de arquivo DMI + e DMI - .I quero ter o sinal no momento da movimentação DMI+ e DMI- sem ADX. Eu me preocupo com isso. Escrevo isto abaixo mas, por favor, crie para isto o arquivo para movê-lo para o MF4.

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

//| ADXcross EXPERT |

//| Perky_z |

//| |

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

#propriedade copyright "Perky_z@yahoo.com"

#link de propriedade "http://groups.yahoo.com/group/MetaTrader_Experts_and_Indicators/"

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

//| Alertas em mãos com o Indicador ADXcrosses Eles não precisam ser executados juntos |

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

// Alertas em cruzamento de linhas + e - DI

// Eu o uso em gráficos de 15 minutos

// embora pareça bom em qualquer período de tempo

// utilizar outros indicadores para confirmar este disparo tho

//---- parâmetros de entrada

duplo b4plusdi,b4minusdi,nowplusdi,nowminusdi;

//----

//---- indicadores

Nesta parte do período de mudança de código como Você quer (14 mudanças para 4 em cada linha) e isto deve funcionar neste escalonamento que Você situa o diagrama.

b4plusdi=iADX(NULL,0,14,PRICE_CLOSE,MODE_PLUSDI,1);

nowplusdi=iADX(NULL,0,14,PRICE_CLOSE,MODE_PLUSDI,0);

b4minusdi=iADX(NULL,0,14,PRICE_CLOSE,MODE_MINUSDI,1);

nowminusdi=iADX(NULL,0,14,PRICE_CLOSE,MODE_MINUSDI,0);

 

Isto é fechar lotes parciais MAS...não fazendo exatamente o que eu esperava.

Não consigo entender o que está fazendo, mas parece fechar 1 lote quando o preço NÃO está onde eu quero.

Talvez você possa ver o problema aqui.

deve fechar 1 lote quando há uma COMPRA e o preço vai .00071(apenas um número aleatório que estou testando em um gráfico de 1 minuto)

ou fechar 1 lote quando há uma VENDA e o preço cai 0,00071

usando um corretor de 5 dígitos, a propósito. Há apenas 1 negociação sempre aberta e somente por esta EA, portanto não há rolagem de ordens

MUITO OBRIGADO pela AJUDA!

if (IsConnected() && IsTradeAllowed()) enquanto (IsTradeContextBusy()) Dormir(75);

se (OrdensTotal()>0) {OrderSelect(0, SELECT_BY_POS,MODE_TRADES);

RefreshRates();

if (Bid >= (OrderOpenPrice()+ (.00071)) && OrderLots() == 2 && (OrderType() == OP_BUY)) {

OrderClose(OrderTicket(),1,Ask,10,R ed); }

se (Ask <= (OrderOpenPrice()- (.00071)) && OrderLots() == 2 && (OrderType() == OP_SELLL)) {

OrderClose(OrderTicket(),1,Bid,10,B lue); }}}}}

 

É possível fazer um código para fechar uma transação no breakeven (lucro=0), quando uma transação tem (uma vez) lucro positivo, mas ainda abaixo do stoplevel do corretor (o trailing ainda não foi tocado)?

Para um corretor de 10 pontos StopLevel, o sistema de trailing só pode funcionar se o lucro tiver atingido pelo menos 10 pontos.

Muitas vezes eu vejo que uma transação só deu positivo para 5 ou 8 pips, depois volta para atingir o SL.

Portanto, estou pensando nisso, mas não sei como fazer isso.

Como fazer um código de breakeven para um EA, algo como Trailing Stop, mas funciona abaixo do nível mínimo de StopLevel do corretor?

 

Para a SPACECHIMP

Quando abrimos o pedido, usamos Ask for Buy e Bid for Sell. Quando fechamos - ao contrário.

 

Ya eu acho que é muito útil

FulltimeTrader:Junho2009

 

Preciso de ajuda para adicionar alerta por e-mail neste indicador de Tendência Top

Preciso de ajuda para adicionar alerta por e-mail neste indicador de Tendência Top.

aqui está a linha e o arquivo anexo.

se (tendência>0)

{

if (Sinal>0 && UpTrendBuffer[shift+1]==-1.0)

{

UpTrendSignal[shift]=bsmin[shift];

UpTrendBuffer[shift]=bsmin[shift];

if(Linha>0) UpTrendLine[shift]=bsmin[shift];

if (SoundON===verdadeiro && shift==0 && !TurnedUp)

{

Alerta("BBands going Up on ",Symbol(),"-",Período());

TurnedUp = verdadeiro;

TurnedDown = falso;

}

}

senão

{

UpTrendBuffer[shift]=bsmin[shift];

if(Linha>0) UpTrendLine[shift]=bsmin[shift];

UpTrendSignal[shift]=-1;

}

if (Signal===2) UpTrendBuffer[shift]=0;

DownTrendSignal[shift]=-1;

DownTrendBuffer[shift]=-1,0;

DownTrendLine[shift]=EMPTY_VALUE;

}

se (tendência<0)

{

if (Sinal>0 && DownTrendBuffer[shift+1]==-1,0)

{

DownTrendSignal[shift]=bsmax[shift];

DownTrendBuffer[shift]=bsmax[shift];

if(Linha>0) DownTrendLine[shift]=bsmax[shift];

if (SoundON===verdadeiro && shift==0 && !TurnedDown)

{

Alerta("BBands going down on ",Symbol(),"-",Period());

TurnedDown = verdadeiro;

TurnedUp = falso;

}

}

senão

{

DownTrendBuffer[shift]=bsmax[shift];

if(Linha>0)DownTrendLine[shift]=bsmax[shift];

DownTrendSignal[shift]=-1;

}

if (Signal===2) DownTrendBuffer[shift]=0;

UpTrendSignal[shift]=-1;

UpTrendBuffer[shift]=-1,0;

UpTrendLine[shift]=EMPTY_VALUE;

}

}

retorno(0);

}

Arquivos anexados:
toptrend.mq4  6 kb
 

Não consegue ver o problema AQUI!?!? AAAAHHHH

Não faço idéia do que estou fazendo de errado...

isto não parece fechar pela metade a um certo TP

se (OrdensTotal()>0) {

OrderSelect(0, SELECT_BY_POS,MODE_TRADES);

Tick = OrderTicket(); // Número da ordem selecionada

Dica =OrderType(); // Tipo de ordem selecionada

Preço =OrdemPreço Aberto(); // Preço da ordem selecionada

Lote =OrderLots();

if (Licitação >= (Preço + (TakeProfit * Ponto)) && Lote == 2 && (Dica == OP_BUY)) {

OrderClose(Tick,1,Bid,10,Red); }

if (Perguntar <= (Preço - (TakeProfit * Ponto)) && Lote == 2 && (Dica == OP_SELL)) {

OrderClose(Tick,1,Ask,10,Blue); }}}}

Eu tenho o BID e o ASK corretos? provavelmente não

 

preciso de alguma ajuda com minha ea

preciso de um código para restringir minha ea a apenas uma profissão. é um escalpador, eu só quero uma profissão, depois que ela faz, eu a adiei e a anexei novamente no dia seguinte. alguém pode me ajudar nisto?

 

Onde nesta linha....

Em algum lugar desta linha, esta pergunta tinha de ter sido feita.

Alguém pode me ajudar com o código para 1) ter um SL oculto que 2) fecha apenas parte (50%) da ordem aberta e 3) fecha o restante da ordem depois que ela atravessa uma média móvel.

Em anexo está um EA, mas não está em inglês, portanto não consigo entender completamente o que está fazendo ou onde acrescentar meu outro código.

Obrigado por sua ajuda.

Arquivos anexados:
 

Como evitar o indicador de recarga em cada novo bilhete

Por favor, me diga o que fiz de errado invocando iCustom que faz com que um indicador seja carregado novamente a cada novo tique(o backtesting preenche toda a janela de visualização com centenas de iterações daquele indicador).

A partir do meu "Start Program", quero confirmar uma oportunidade comercial usando o método EntryDir() (que se segue):

data/hora estática dura;

se ( CurTime()-lastsd>2*60*Periodo() )

{

if(ZZ>=High[1] && EntryDir()==OP_SELLL)

{

if(pos == 1) {DoExit(OP_BUY);}

PrepNewOrder(OP_SELL);

lastsd=CurTime();

}

if(ZZ!=0 && ZZ<=Low[1] && EntryDir()==OP_BUY)

{

if(pos == -1) {DoExit(OP_SELL);}

PrepNewOrder(OP_BUY);

lastsd=CurTime();

}

}

int EntryDir()

{

bool buyOK=false, sellOK=false;

fluxo duplo = iCustom(NULL, 0, "Dtron", 0,0) + iCustom(NULL, 0, "Dtron" 1,0);

gatilho duplo = iCustom(NULL, 0, "Dtron", 1,0) + iCustom(NULL, 0, "Dtron", 3,0);

inversão dupla = iCustom(NULL, 0, "Dtron", 4,0);

if((reversal==0 && flow + trigger>0) ||| reversal>0) entryDir=OP_BUY;

if((reversal==0 && flow + trigger<0) ||| reversal<0) entryDir=OP_SELLL;

return(entryDir);

}

Por favor, mostre-me como evitar que centenas de janelas indicadoras Dtron se abram aqui.

Razão: