Como codificar? - página 188

 

int start()

{

int total,ord,i;

símbolo de corda;

total = OrdensTotal();

for(i=0;i<total;i++)

{

OrderSelect(i,SELECT_BY_POS);

if(OrderSymbol() = Symbol())ord++;

}

if(ord>0) return (0); //Abort! Uma posição para este par já está aberta

//o resto do código do meu programa

}

Descobri, na realidade, que tive que usar pausas de alguns segundos no código devido a corretores que não abriam posições instantaneamente.

 

Quer abrir 1 POSIÇÃO em uma direção, mas Não mais, mesmo que a posição atinja TP.

A verificação da posição aberta não vai funcionar obviamente.

Exemplo -

Não quero que outra 'COMPRA' seja executada se eu tivesse uma compra aberta e ela atingisse o TP. Quero que ele espere até a cruz do MA e abra uma VENDA com um TP e repita tudo de novo.

Provavelmente há uma maneira fácil de fazer isto: comprar meu cérebro está frito ou algo assim.

OBRIGADO

 

Obrigado pela informação...

SPACECHIMP:
int start()

{

int total,ord,i;

símbolo de corda;

total = OrdensTotal();

for(i=0;i<total;i++)

{

OrderSelect(i,SELECT_BY_POS);

if(OrderSymbol() = Symbol())ord++;

}

if(ord>0) return (0); //Abort! Uma posição para este par já está aberta

//o resto do código do meu programa

}

Descobri, na realidade, que tive que usar pausas de alguns segundos no código devido a corretores que não abriam posições instantaneamente.

Obrigado por ter me mostrado este código! Não creio que minhas capturas de tela tenham sido suficientes para explicar a lógica do que estou tentando alcançar. Aqui está a explicação em witting... e apenas como exemplo estou usando um cenário "Comprar". Eventualmente eu gostaria que ele fizesse tanto "Comprar" quanto "Vender".

Cenário 1: Se seu negócio de compra vai com você...--Trade 1, T/P a 70 pips

--Trade 2, 30 pips appart do comércio 1, T/P a 70 pips

--Trade 3, a 30 pips do comércio 2, T/P a 70 pips

** 210 pips total

Cenário 2: Se sua operação de compra for contra você...coloque em uma operação a cada 60 pips para três operações e espere o mercado recuar em sua direção...opere 1 mau...entre em uma nova operação de compra contingente a -60 pips do preço da operação 1.

--...entrar em uma nova transação de compra contingente a -60 pips do preço da transação 2.

--trato 3 ruim...não entre mais trocas

--espere por sinais de reversão... pontoparabólico = fundo... se parecer que está se movendo em nossa direção, então entre em uma 4ª compra

-- esperar mais 30 pips positivos e então entrar no 5º comércio de compra...continuar a entrar no comércio de compra (6, 7, 8 comércio) até atingir o nível que o 3º comércio de contingência estava em.... então esperar pelo primeiro 1 original, e seguir os passos do cenário 1.

É possível obter o código para esta lógica? Eu ficaria muito grato!!!

 
SPACECHIMP:
Quer abrir 1 POSIÇÃO em uma direção, mas Não mais, mesmo que a posição atinja TP.

A verificação da posição aberta não funcionará obviamente.

Exemplo -

Não quero que outra 'COMPRA' seja executada se eu tivesse uma compra aberta e ela atingisse o TP. Quero que ele espere até a cruz do MA e abra uma VENDA com um TP e repita tudo de novo.

Provavelmente há uma maneira fácil de fazer isto: comprar meu cérebro está frito ou algo assim.

OBRIGADO

Você precisa verificar seu histórico de pedidos para ver se um pedido acabou de fechar no bar atual para obter lucro.

Espero que isso ajude.

Lux

 

Filtro RSI pete

Olá a todos...

eu tentei criar uma simples ea para este indy (rsi filter pete) mas depois de compilar, quando eu lanço um backtest nada acontece

eu quero apenas

1-compra em verde ou verde claro

2-e vender em vermelho ou vermelho claro

Portanto, peço a algumas pessoas gentis que me ajudem nisto

Obrigado de antemão

Arquivos anexados:
 

MM para EA plz

quero acrescentar esta condição à minha ea

se a perda no dia em questão = 100 ---> fechar todas as posições, não tome nenhuma OP até amanhã

se a perda no dia corrente pode levar qualquer OP

qualquer pessoa pode ajudar ????

esta minha EA

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

/*

EA Dengan sinyal dari signal ma

*/

extern double Lots = 0.01;

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

//| |

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

int start()

{

double a1, //ma 10 tf 4h

a2, //ma 10 tf 1h

a3, //ma 10 tf 15m

a4, //ma 10 tf 5m

j, //yesterday low price

k, //yesterday high price

b1, //ma 30 tf 4h

b2, //ma 30 tf 1h

b3, //ma 30 tf 15m

b4; //ma 30 tf 5m

int cnt, ticket, total;

if(Bars<100)

{

Print("bars less than 100");

return(0);

}

// to simplify the coding and speed up access

// data are put into internal variables

a1 = iMA(NULL,240,10,0,MODE_EMA,PRICE_CLOSE,0);

a2 = iMA(NULL,60,10,0,MODE_EMA,PRICE_CLOSE,0);

a3 = iMA(NULL,15,10,0,MODE_EMA,PRICE_CLOSE,0);

a4 = iMA(NULL,5,10,0,MODE_EMA,PRICE_CLOSE,0);

b1 = iMA(NULL,240,30,0,MODE_EMA,PRICE_CLOSE,0);

b2 = iMA(NULL,60,30,0,MODE_EMA,PRICE_CLOSE,0);

b3 = iMA(NULL,15,30,0,MODE_EMA,PRICE_CLOSE,0);

b4 = iMA(NULL,5,30,0,MODE_EMA,PRICE_CLOSE,0);

j = iLow(NULL,60,2);

k = iHigh(NULL,60,2);

total=OrdersTotal();

if(total<1)

{

// no opened orders identified

if(AccountFreeMargin()<(1000*Lots))

{

Print("We have no money. Free Margin = ", AccountFreeMargin());

return(0);

}

// check for long position (BUY) possibility

if(a1>b1&&

a2>b2&&

a3>b3&&

a4>b4+10*Point)

{

ticket=OrderSend(Symbol(),OP_BUY,Lots,Ask,3,0,0,"macd sample",16384,0,Green);

if(ticket>0)

{

if(OrderSelect(ticket,SELECT_BY_TICKET,MODE_TRADES)) Print("BUY order opened : ",OrderOpenPrice());

}

else Print("Error opening BUY order : ",GetLastError());

return(0);

}

// check for short position (SELL) possibility

if(a1<b1&&

a2<b2&&

a3<b3&&

a4<b4-10*Point)

{

ticket=OrderSend(Symbol(),OP_SELL,Lots,Bid,3,0,0,"macd sample",16384,0,Red);

if(ticket>0)

{

if(OrderSelect(ticket,SELECT_BY_TICKET,MODE_TRADES)) Print("SELL order opened : ",OrderOpenPrice());

}

else Print("Error opening SELL order : ",GetLastError());

return(0);

}

return(0);

}

// it is important to enter the market correctly,

// but it is more important to exit it correctly...

for(cnt=0;cnt<total;cnt++)

{

OrderSelect(cnt, SELECT_BY_POS, MODE_TRADES);

if(OrderType()<=OP_SELL && // check for opened position

OrderSymbol()==Symbol()) // check for symbol

{

if(OrderType()==OP_BUY) // long position is opened

{

// should it be closed?

if(Bid>OrderOpenPrice()+100*Point)//if profit > 100

{

OrderModify(OrderTicket(),OrderOpenPrice(),j,0,0,Green);

return(0);

}

if(Bid<OrderOpenPrice()-150*Point)//stop loss

{

OrderClose(OrderTicket(),OrderLots(),Bid,3,Violet); // close position

return(0); // exit

}

}

else // go to short position

{

// should it be closed?

if(Ask 100

{

OrderModify(OrderTicket(),OrderOpenPrice(),k,0,0,Green);

return(0);

}

if(Ask>OrderOpenPrice()+150*Point)//stop loss

{

OrderClose(OrderTicket(),OrderLots(),Ask,3,Violet); // close position

return(0); // exit

}

}

}

}

return(0);

}

// the end.

 

Hi,

Eu pedi algo semelhante em outro fórum há algumas semanas. Uma espécie de CLOSEALL se o saldo = + x quantia ou -x quantia. Eu não sou um programador, mas parece não ser possível (?) porque realmente só obtive algumas respostas que não estavam claras.

Não parece ser tão complicado, mas, novamente, não sou um programador.

Boa sorte,

 

é possível abrir uma janela popup comercial pela EA ?

Olá.

Eu gostaria de abrir uma janela popup comercial pela EA.

É possível?

Se for possível abri-la pela EA, é possível abrir uma janela popup comercial na qual o número do volume negociado (o número do lote) é definido para um número ordenado pela EA ?

 
Dax:
Olá.

Eu gostaria de abrir uma janela popup comercial pela EA.

Isso é possível?

Se for possível abri-la pela EA, é possível abrir uma janela popup comercial na qual o número do volume negociado (o número do lote) é definido para um número ordenado pela EA ?

Você terá que fazer isso com uma dll.

 
Ms_Mel:
Hi,

Eu pedi algo semelhante em outro fórum há algumas semanas. Uma espécie de CLOSEALL se o saldo = + x quantia ou -x quantia. Eu não sou um programador, mas parece não ser possível (?) porque realmente só obtive algumas respostas que não estavam claras.

Não parece ser tão complicado, mas, novamente, não sou um programador.

Boa sorte,

Procure nos fóruns por todos os EAs próximos. Há alguns aqui

Razão: