Comment coder ? - page 184

 

Aider à faire des indicateurs pour ea

Une grande stratégie trouvée par moi beaucoup de pips en attente

BONJOUR À TOUS, J'AI TROUVÉ UNE STRATÉGIE SUR TOUTES LES DEVISES ET J'AI BESOIN QUE VOUS FASSIEZ L'EA POUR MOI, REGARDEZ ÇA...

1 MA_Period= 2 MA_shift= -5 MA_Method= 3 (YELLOW)

2 paramètres MA MA_Period= 4 MA_shift= -5 MA_Method= 3 (RED)

3 réglages MA MA_Period= 200 MA_shift= 0 MA_Method= 0 (COULEUR BLEU)

SIGNAL COURT : QUAND LE JAUNE ET LE ROUGE TRAVERSENT LA COULEUR SARCELLE, SOIT VERS LE HAUT, SOIT VERS LE BAS.

FAISONS UN PEU D'EA POUR LE FAIRE FONCTIONNER ET FAISONS EN SORTE QUE L'EA SE MODIFIE QUAND LE PRIX PASSE À 10 PIPS NON LE STOP LOSS PASSERA À 2 PIPS EN ATTENDANT LE MEILLEUR PROGRAMMEUR....

 
 

Besoin d'aide pour programmer le suivi du prix

Bonjour à tous, j'ai une question sur la programmation sur MT4, comment puis-je faire pour que l'EA surveille le prix ? par exemple, si le prix monte à un certain niveau, alors il initiera un autre ensemble d'ordres ? J'ai joint le code de mon EA ici , merci beaucoup pour votre aide.

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

//| Auto Pipforia.mq4 |

//| Copyright ?2009, MetaQuotes Software Corp. |

//| Logiciel de trading Forex : Plate-forme de trading forex MetaTrader 4 |

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

extern double AnchorSpace = 0.0017 ;

extern double GridSpace = 0.0017 ;

extern double AnchorLot = 0.03 ;

extern double Level1 = 0.06 ;

extern double Level2 = 0.11 ;

double externe Level3 = 0,11 ;

extern double Level4Up = 0.11 ;

extern int MagicNumber = 1001 ;

extern double Profit_Target=0 ;

double SendCount=0 ;

int start()

{

int divider=(Ask-Bid)/2 ;

double MidPrice=Ask-diviseur ;

double Buy=MidPrice+AnchorSpace ;

SendOrders(Buy) ;

Surveiller le profit() ;

retour(0) ;

}

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

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

void SendOrders(double Buy)

{

if(SendCount<3){

OrderSend(Symbol(),OP_BUYSTOP,AnchorLot,Buy,0,0,0, "MagicNumber",MagicNumber,0,Green) ;

Buy=Buy+GridSpace ;

OrderSend(Symbol(),OP_BUYSTOP,Level1,Buy,0,0,0, "MagicNumber",MagicNumber,0,Green) ;

Buy=Buy+GridSpace ;

OrderSend(Symbol(),OP_BUYSTOP,Level2,Buy,0,0,0, "MagicNumber",MagicNumber,0,Green) ;

SendCount=3 ;

}

sinon si (SendCount==3)

{

retour() ;

}

}

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

void MonitorProfit()

{

// double Percent=Profit_Percentage/100 ;

int total = OrdersTotal() ;

double MyCurrentProfit=0 ;

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

{

OrderSelect(cnt,SELECT_BY_POS,MODE_TRADES) ;

si (OrderMagicNumber() == MagicNumber)

MonProfitCourant += OrderProfit() ;

}

si (MyCurrentProfit>= Profit_Target){

for(int i=total-1;i>=0;i--)

{

OrderSelect(i, SELECT_BY_POS) ;

si (OrderMagicNumber() == MagicNumber)

{

OrderClose( OrderTicket(), OrderLots(), MarketInfo(OrderSymbol(),()), 5, Red ) ;

OrderDelete( OrderTicket() ) ;

}

}

}

else()

{

return() ;

}

}

// voici la partie qui doit être programmée.

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

void MonitorPrice()

{

if(Buy-Ask<=20 Point || Bid-Sell<=20 Point)

{

 

A tendyhk-

votre question n'est pas tout à fait claire, mais "20 points" devrait se lire "20*point".

Big Be

 

A Kimito2

Je crois que cela peut être fait et je crois que je peux le faire. La plupart des tâches sont déjà prévues dans ma longue EA. Ce ne sera pas bon marché parce que je tiens à mon temps.

Big Be

 

comment faire un trade avec un cycle ?

Bonjour

J'ai un EA et j'aimerais le faire fonctionner avec un cycle.

J'ai 5 variables

double ma1 = iMA(NULL, 0, 1, 0, MODE_EMA, PRICE_CLOSE, Current + 0) ;

double sar = iSAR(NULL, 0, 0.02, 0.2, Current + 0) ;

double Macd=iMACD(NULL,0,12,26,9,PRICE_CLOSE,MODE_MAIN,Current + 0) ;

double Signal=iMACD(NULL,0,12,26,9,PRICE_CLOSE,MODE_SIGNAL,Current + 0) ;

string var_trading="ok" ;

la condition pour un trade est :

******************************

si (Période()==1)

{

double ma_buy = ma1>sar && Macd>Signal && var_trading=="ok" ;

}

******************************

Et voici ce que je veux :

1/le début de la transaction

2/la valeur de var_trading est devenue "no" --> var_trading="no"

3/ Fin de la transaction (Takeprofit ou stoploss)

4/La nouvelle transaction peut commencer car var_trading=="no".

5/ IMPORTANT : lorsque ma1 var_trading=="ok".

6/ Quand ma1 > sar à nouveau et si Macd>Signal ====> un nouveau trade commence !

7/ et la valeur de var_trading est devenue "no" --> var_trading="no"

8/ etc....

*******************************

Comment puis-je faire ?

Pour de nombreuses raisons, je ne veux pas ceci (voir mon code s'il vous plaît)

double ma_buy = ma1p1sar && Macd>Signal && var_trading=="ok" ;

Meilleures salutations

Dossiers :
thl.mq4  22 kb
 

Programmeurs, aidez-moi sur ce point

J'essaie de convertir un indicateur en EA. L'indicateur utilise "int counted_bars = IndicatorCounted()", pour compter les barres, dans l'EA je pense que je ne peux pas utiliser ceci puisque c'est lié à l'indicateur.

Comment puis-je résoudre ce problème ?

Votre aide sera appréciée.

Merci

 

Si vous voulez utiliser un indicateur dans un EA, le meilleur moyen/le plus simple est d'utiliser la fonction iCustom. Consultez le fichier d'aide pour savoir comment l'utiliser.

Bonne chance

Lux

 

@luxinterior, merci pour votre réponse

 

J'ai reçu cette erreur, qu'est-ce que cela signifie ?

2009.06.16 08:23:11 TestGenerator : unmatched data error (volume limit 66 at 2009.06.15 20:45 exceeded)