Demandez ! - page 69

 

Bonjour,

Quelqu'un peut-il me dire ce qui ne va pas avec ce code ?

Il n'ouvre pas d'ordre du tout ?

Je l'ai back testé au 2007.01.03

Salutations

extern string StrGetPosition = "19:55";

extern string StrStartOrderTime = "20:00";

extern string StrEndOrderTime = "23:59";

extern double MyBidPrice = 1.3271;

int CountOrder = 0, BuyMagicNumber, SellMagicNumber;

extern double Lots = 1;

extern int StopLoss = 35;

extern int TakeProfit = 8;

extern bool FlagBuy = false;

int x, b, FindMagicSell, TicketSell, FindMagicBuy, TicketBuy;

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

//| expert initialization function |

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

int init()

{

//----

MyBidPrice = 1.3271;

//----

return(0);

}

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

//| expert deinitialization function |

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

int deinit()

{

//----

//----

return(0);

}

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

//| expert start function |

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

int start()

{

//----

int GetPosition, StartOrderTime, EndOrderTime, o;

GetPosition = StrToTime(StrGetPosition);

StartOrderTime = StrToTime(StrStartOrderTime);

EndOrderTime = StrToTime(StrEndOrderTime);

if (TimeCurrent() >= StartOrderTime && TimeCurrent() <= EndOrderTime)

{

FlagBuy = true;

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

//| Posisi BUY

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

if (FlagBuy == true)

{

if ((MyBidPrice == Bid) && (CountOrder < 6))

{

CountOrder++;

BuyMagicNumber = StrToInteger("1" + CountOrder + Day() + Month() + Year());

o = OrderSend(Symbol(),OP_BUY,Lots,Bid,3,Bid-StopLoss*Point,Bid+TakeProfit*Point,"Test",BuyMagicNumber,0,Green);

if (o < 1) MessageBox("ERROR!!");

if (CountOrder > 1) ModifyBuy();

if (CountOrder == 5) FlagBuy = false;

MyBidPrice = Bid - (2*Point);

}

ShowComment();

}

}

//----

return(0);

}

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

void ModifyBuy()

{

for (x = 1; x < CountOrder; x++)

{

FindMagicBuy = StrToInteger("1" + x + Day() + Month() + Year());

for (b = 0; b < OrdersTotal(); b++)

{

OrderSelect(b,SELECT_BY_POS, MODE_TRADES);

if (OrderMagicNumber() == FindMagicBuy)

{

TicketBuy = OrderTicket();

OrderSelect(TicketBuy,SELECT_BY_TICKET);

OrderModify(OrderTicket(),OrderOpenPrice(),OrderStopLoss(),OrderTakeProfit()-(2*Point),0);

break;

}

}

}

}

void ShowComment()

{

Comment("DayOfWeek = ",DayOfWeek(),"\nFLAG BUY : ",FlagBuy,"\nCount Order ",CountOrder,"\nNext order = ",MyBidPrice,"\nBID = ",Bid,"\nTime : ",TimeToStr(TimeCurrent(),TIME_MINUTES));

}
 

Impossible de trouver le fichier MQ4 pour l'indicateur

J'espère que quelqu'un pourra m'aider avec quelque chose que je pensais initialement être assez simple. Je voulais mettre une alerte sonore sur un indicateur qui est fourni avec Metatrader de sorte que lorsqu'il atteint un niveau particulier, il m'en informe. L'indicateur est l'indice de force, mais je ne trouve pas de fichier MQ4 pour cet indicateur dans le dossier Experts/Indicateurs. Quelqu'un a-t-il une idée de l'endroit où je pourrais trouver ce fichier ?

Si je trouve le fichier MQ4, ai-je raison de penser que je peux utiliser le code donné par Codersguru au début de ce fil de discussion pour y ajouter une alerte ?

Merci

 

ref Previous Post

J'ai réussi à résoudre mon problème à partir du post ci-dessus.

Merci à tous pour votre intérêt.

 
Hartadi:
Bonjour,

Quelqu'un peut-il me dire ce qui ne va pas avec ce code ?

Il n'ouvre pas d'ordre du tout ?

Je l'ai back testé au 2007.01.03

Salutations

o = OrderSend(Symbol(),OP_BUY,Lots,Bid,3,Bid-StopLoss*Point,Bid+TakeProfit*Point,"Test",BuyMagicNumber,0,Green);

Vous ne pouvez pas acheter au cours acheteur.

 

@Michel :

Oh mon Dieu... Comme je suis stupide...

Merci...

 

Aide pour la plantation de haies

Bonjour à tous !

J'ai utilisé l'Expert Advisor Builder de sufx.com pour créer un EA. Il a deux limitations dont j'essaie de me débarrasser :

1. Il n'ouvre qu'une seule transaction à la fois. Je peux faire en sorte que deux transactions soient ouvertes en même temps, mais je n'arrive pas à ouvrir un ordre d'achat et un ordre de vente simultanément.

2. semble préférer les ordres de vente aux ordres d'achat. Ce ne serait pas vraiment un problème si le problème numéro 1 était résolu.

Voici le morceau de code qui semble me bloquer :

//Check position

bool IsTrade = False;

for (int i = 0; i < Total; i ++) {

OrderSelect(i, SELECT_BY_POS, MODE_TRADES);

if (OrderType() <= OP_SELL && OrderSymbol() == Symbol()) {

IsTrade = True;

if (OrderType() == OP_BUY) {

//Close

Des suggestions ? J'aimerais qu'il ouvre autant de transactions que possible, et qu'il puisse ouvrir des ordres d'achat et de vente simultanément si les indicateurs le disent.

Merci pour votre aide,

Benjimang

 

Profit/perte de la monnaie

Dave,

Je pense que vous devez être plus précis dans ce que vous demandez. Et d'ailleurs, pourquoi ne réponds-tu pas aux MP ? Où te caches-tu ces jours-ci ??? lol

P à KC

 
FX4$$$:
Dave,

Je pense que vous devez être plus précis dans ce que vous demandez. Et d'ailleurs, pourquoi ne réponds-tu pas aux MP ? Où te caches-tu ces jours-ci ? lol

P à KC

Je n'ai pas reçu de nouveaux MP ????. Malheureusement, pendant ce temps, j'ai eu une urgence familiale qui s'est produite - Tout va bien avec l'urgence. J'ai toujours besoin d'aide pour mon codage, en particulier pour le codage des enveloppes.

Dave

 

Comment afficher le profit de la devise en haut à droite du graphique ?

Je voudrais afficher le profit/la perte de la devise en haut à droite du graphique des devises de la plateforme de négociation (EURUSD). Si le bénéfice de la transaction en cours est positif, il apparaîtrait en vert ; s'il est de 0,00, il apparaîtrait en blanc ; s'il s'agit d'une perte, il apparaîtrait en rouge.

Je sais que ObjectCreate est la solution, mais à part cela, je ne sais pas comment capturer le profit de la plateforme commerciale. Quelqu'un peut-il me donner un coup de main sur cet utilitaire ? Je veux l'inclure dans mon ea.

Merci !

Dave

<<<
 

statistiques de trading

utilisez ce code :

// ***************************************************************************

int stats()

{

int i, vOrders ;

// bénéfice actuel du CP

vOrders = OrdersTotal() ;

Profit = 0 ;

PipsProfit = 0 ;

for(i=vOrders-1;i>=0;i--)

{

if(OrderSelect(i, SELECT_BY_POS, MODE_TRADES))

{

si(OrderSymbol() == Symbol())

{

Profit += OrderProfit() ;

si (OrderType() == OP_BUY) PipsProfit += ((Bid - OrderOpenPrice())/Point) ;

sinon si (OrderType() == OP_SELL) PipsProfit += ((OrderOpenPrice() - Ask)/Point) ;

}

}

}

// risque potentiel

// positions maximales

}

Profit & PipsProfit devront être déclarés en dehors du programme, puis affichés à l'écran avec votre méthode préférée. Commentaires si rien d'autre.

Mark