script multiples entrees et sorties
Modérateur : Administrateurs
script multiples entrees et sorties
Voici un petit script de débutant qui ne marche pas et m'empêche de progresser
Je ne comprends pas:
Je souhaite prendre position quand une MM1 ou 6 croise une M50 sur UT H1.
Jusque là rien de plus classique.
Cette prise de position se fait avec un schift -1 ou -2, autrement dit, je demande ceci:
Si M1 > MM50 et si M1 précédent (-1 ou -2 barres ) < à MM50 alors acheter.
Fermer si M1 à nouveau < à MM50.
Je fais pareil pour vendre.
Je vous donne le script si dessous pour MT4 sachant que :
-mon backtest porte sur EURUSD en H1
-date: 2009.10.01 à 2010.01.01
Je remarque la chose suivante: A partir de 2009.11.19 les ordres d'ouverture et de fermeture ne cessent de se succéder... évidemment à mon désavantage et au bonheur (virtuel de mon broker
Je ne comprends pas pourquoi, erreur de débutant, sans doute mais que beaucoup ont du rencontré.
UN PETIT MOT POUR M'AIDER SERAIT SYMPA.
Bon trade à tous,
Luc31
Script:
//+------------------------------------------------------------------+
//| This MQL is generated by Expert Advisor Builder |
//| http://sufx.core.t3-ism.net/ExpertAdvisorBuilder/ |
//| |
//| In no event will author be liable for any damages whatsoever. |
//| Use at your own risk. |
//| |
//+------------------- DO NOT REMOVE THIS HEADER --------------------+
#define SIGNAL_NONE 0
#define SIGNAL_BUY 1
#define SIGNAL_SELL 2
#define SIGNAL_CLOSEBUY 3
#define SIGNAL_CLOSESELL 4
#property copyright "Expert Advisor Builder"
#property link "http://sufx.core.t3-ism.net/ExpertAdvisorBuilder/"
extern int MagicNumber = 0;
extern bool SignalMail = False;
extern bool EachTickMode = True;
extern double Lots = 0.5;
extern int Slippage = 3;
extern bool UseStopLoss = False;
extern int StopLoss = 80;
extern bool UseTakeProfit = True;
extern int TakeProfit = 500;
extern bool UseTrailingStop = False;
extern int TrailingStop = 80;
int BarCount;
int Current;
bool TickCheck = False;
//+------------------------------------------------------------------+
//| expert initialization function |
//+------------------------------------------------------------------+
int init() {
BarCount = Bars;
if (EachTickMode) Current = 0; else Current = 1;
return(0);
}
//+------------------------------------------------------------------+
//| expert deinitialization function |
//+------------------------------------------------------------------+
int deinit() {
return(0);
}
//+------------------------------------------------------------------+
//| expert start function |
//+------------------------------------------------------------------+
int start() {
int Order = SIGNAL_NONE;
int Total, Ticket;
double StopLossLevel, TakeProfitLevel;
if (EachTickMode && Bars != BarCount) TickCheck = False;
Total = OrdersTotal();
Order = SIGNAL_NONE;
//+------------------------------------------------------------------+
//| Variable Begin |
//+------------------------------------------------------------------+
double Buy1_1 = iMA(NULL, 0, 1, 0, MODE_SMA, PRICE_OPEN, Current + 0);
double Buy1_2 = iMA(NULL, 0, 50, 0, MODE_SMA, PRICE_CLOSE, Current + 0);
double Buy2_1 = iMA(NULL, 0, 1, 0, MODE_SMA, PRICE_CLOSE, Current + 1);
double Buy2_2 = iMA(NULL, 0, 50, 0, MODE_SMA, PRICE_CLOSE, Current + 0);
double Sell1_1 = iMA(NULL, 0, 1, 0, MODE_SMA, PRICE_OPEN, Current + 0);
double Sell1_2 = iMA(NULL, 0, 50, 0, MODE_SMA, PRICE_CLOSE, Current + 0);
double Sell2_1 = iMA(NULL, 0, 1, 0, MODE_SMA, PRICE_CLOSE, Current + 1);
double Sell2_2 = iMA(NULL, 0, 50, 0, MODE_SMA, PRICE_CLOSE, Current + 0);
double CloseBuy1_1 = iMA(NULL, 0, 1, 0, MODE_SMA, PRICE_OPEN, Current + 0);
double CloseBuy1_2 = iMA(NULL, 0, 50, 0, MODE_SMA, PRICE_CLOSE, Current + 0);
double CloseSell1_1 = iMA(NULL, 0, 1, 0, MODE_SMA, PRICE_OPEN, Current + 0);
double CloseSell1_2 = iMA(NULL, 0, 50, 0, MODE_SMA, PRICE_CLOSE, Current + 0);
//+------------------------------------------------------------------+
//| Variable End |
//+------------------------------------------------------------------+
//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
//+------------------------------------------------------------------+
//| Signal Begin(Exit Buy) |
//+------------------------------------------------------------------+
if (CloseBuy1_1 < CloseBuy1_2) Order = SIGNAL_CLOSEBUY;
//+------------------------------------------------------------------+
//| Signal End(Exit Buy) |
//+------------------------------------------------------------------+
if (Order == SIGNAL_CLOSEBUY && ((EachTickMode && !TickCheck) || (!EachTickMode && (Bars != BarCount)))) {
OrderClose(OrderTicket(), OrderLots(), Bid, Slippage, MediumSeaGreen);
if (SignalMail) SendMail("[Signal Alert]", "[" + Symbol() + "] " + DoubleToStr(Bid, Digits) + " Close Buy");
if (!EachTickMode) BarCount = Bars;
IsTrade = False;
continue;
}
//Trailing stop
if(UseTrailingStop && TrailingStop > 0) {
if(Bid - OrderOpenPrice() > Point * TrailingStop) {
if(OrderStopLoss() < Bid - Point * TrailingStop) {
OrderModify(OrderTicket(), OrderOpenPrice(), Bid - Point * TrailingStop, OrderTakeProfit(), 0, MediumSeaGreen);
if (!EachTickMode) BarCount = Bars;
continue;
}
}
}
} else {
//Close
//+------------------------------------------------------------------+
//| Signal Begin(Exit Sell) |
//+------------------------------------------------------------------+
if (CloseSell1_1 > CloseSell1_2) Order = SIGNAL_CLOSESELL;
//+------------------------------------------------------------------+
//| Signal End(Exit Sell) |
//+------------------------------------------------------------------+
if (Order == SIGNAL_CLOSESELL && ((EachTickMode && !TickCheck) || (!EachTickMode && (Bars != BarCount)))) {
OrderClose(OrderTicket(), OrderLots(), Ask, Slippage, DarkOrange);
if (SignalMail) SendMail("[Signal Alert]", "[" + Symbol() + "] " + DoubleToStr(Ask, Digits) + " Close Sell");
if (!EachTickMode) BarCount = Bars;
IsTrade = False;
continue;
}
//Trailing stop
if(UseTrailingStop && TrailingStop > 0) {
if((OrderOpenPrice() - Ask) > (Point * TrailingStop)) {
if((OrderStopLoss() > (Ask + Point * TrailingStop)) || (OrderStopLoss() == 0)) {
OrderModify(OrderTicket(), OrderOpenPrice(), Ask + Point * TrailingStop, OrderTakeProfit(), 0, DarkOrange);
if (!EachTickMode) BarCount = Bars;
continue;
}
}
}
}
}
}
//+------------------------------------------------------------------+
//| Signal Begin(Entry) |
//+------------------------------------------------------------------+
if (Buy1_1 > Buy1_2 && Buy2_1 < Buy2_2) Order = SIGNAL_BUY;
if (Sell1_1 < Sell1_2 && Sell2_1 > Sell2_2) Order = SIGNAL_SELL;
//+------------------------------------------------------------------+
//| Signal End |
//+------------------------------------------------------------------+
//Buy
if (Order == SIGNAL_BUY && ((EachTickMode && !TickCheck) || (!EachTickMode && (Bars != BarCount)))) {
if(!IsTrade) {
//Check free margin
if (AccountFreeMargin() < (1000 * Lots)) {
Print("We have no money. Free Margin = ", AccountFreeMargin());
return(0);
}
if (UseStopLoss) StopLossLevel = Ask - StopLoss * Point; else StopLossLevel = 0.0;
if (UseTakeProfit) TakeProfitLevel = Ask + TakeProfit * Point; else TakeProfitLevel = 0.0;
Ticket = OrderSend(Symbol(), OP_BUY, Lots, Ask, Slippage, StopLossLevel, TakeProfitLevel, "Buy(#" + MagicNumber + ")", MagicNumber, 0, DodgerBlue);
if(Ticket > 0) {
if (OrderSelect(Ticket, SELECT_BY_TICKET, MODE_TRADES)) {
Print("BUY order opened : ", OrderOpenPrice());
if (SignalMail) SendMail("[Signal Alert]", "[" + Symbol() + "] " + DoubleToStr(Ask, Digits) + " Open Buy");
} else {
Print("Error opening BUY order : ", GetLastError());
}
}
if (EachTickMode) TickCheck = True;
if (!EachTickMode) BarCount = Bars;
return(0);
}
}
//Sell
if (Order == SIGNAL_SELL && ((EachTickMode && !TickCheck) || (!EachTickMode && (Bars != BarCount)))) {
if(!IsTrade) {
//Check free margin
if (AccountFreeMargin() < (1000 * Lots)) {
Print("We have no money. Free Margin = ", AccountFreeMargin());
return(0);
}
if (UseStopLoss) StopLossLevel = Bid + StopLoss * Point; else StopLossLevel = 0.0;
if (UseTakeProfit) TakeProfitLevel = Bid - TakeProfit * Point; else TakeProfitLevel = 0.0;
Ticket = OrderSend(Symbol(), OP_SELL, Lots, Bid, Slippage, StopLossLevel, TakeProfitLevel, "Sell(#" + MagicNumber + ")", MagicNumber, 0, DeepPink);
if(Ticket > 0) {
if (OrderSelect(Ticket, SELECT_BY_TICKET, MODE_TRADES)) {
Print("SELL order opened : ", OrderOpenPrice());
if (SignalMail) SendMail("[Signal Alert]", "[" + Symbol() + "] " + DoubleToStr(Bid, Digits) + " Open Sell");
} else {
Print("Error opening SELL order : ", GetLastError());
}
}
if (EachTickMode) TickCheck = True;
if (!EachTickMode) BarCount = Bars;
return(0);
}
}
if (!EachTickMode) BarCount = Bars;
return(0);
}
//+------------------------------------------------------------------+
Je ne comprends pas:
Je souhaite prendre position quand une MM1 ou 6 croise une M50 sur UT H1.
Jusque là rien de plus classique.
Cette prise de position se fait avec un schift -1 ou -2, autrement dit, je demande ceci:
Si M1 > MM50 et si M1 précédent (-1 ou -2 barres ) < à MM50 alors acheter.
Fermer si M1 à nouveau < à MM50.
Je fais pareil pour vendre.
Je vous donne le script si dessous pour MT4 sachant que :
-mon backtest porte sur EURUSD en H1
-date: 2009.10.01 à 2010.01.01
Je remarque la chose suivante: A partir de 2009.11.19 les ordres d'ouverture et de fermeture ne cessent de se succéder... évidemment à mon désavantage et au bonheur (virtuel de mon broker
Je ne comprends pas pourquoi, erreur de débutant, sans doute mais que beaucoup ont du rencontré.
UN PETIT MOT POUR M'AIDER SERAIT SYMPA.
Bon trade à tous,
Luc31
Script:
//+------------------------------------------------------------------+
//| This MQL is generated by Expert Advisor Builder |
//| http://sufx.core.t3-ism.net/ExpertAdvisorBuilder/ |
//| |
//| In no event will author be liable for any damages whatsoever. |
//| Use at your own risk. |
//| |
//+------------------- DO NOT REMOVE THIS HEADER --------------------+
#define SIGNAL_NONE 0
#define SIGNAL_BUY 1
#define SIGNAL_SELL 2
#define SIGNAL_CLOSEBUY 3
#define SIGNAL_CLOSESELL 4
#property copyright "Expert Advisor Builder"
#property link "http://sufx.core.t3-ism.net/ExpertAdvisorBuilder/"
extern int MagicNumber = 0;
extern bool SignalMail = False;
extern bool EachTickMode = True;
extern double Lots = 0.5;
extern int Slippage = 3;
extern bool UseStopLoss = False;
extern int StopLoss = 80;
extern bool UseTakeProfit = True;
extern int TakeProfit = 500;
extern bool UseTrailingStop = False;
extern int TrailingStop = 80;
int BarCount;
int Current;
bool TickCheck = False;
//+------------------------------------------------------------------+
//| expert initialization function |
//+------------------------------------------------------------------+
int init() {
BarCount = Bars;
if (EachTickMode) Current = 0; else Current = 1;
return(0);
}
//+------------------------------------------------------------------+
//| expert deinitialization function |
//+------------------------------------------------------------------+
int deinit() {
return(0);
}
//+------------------------------------------------------------------+
//| expert start function |
//+------------------------------------------------------------------+
int start() {
int Order = SIGNAL_NONE;
int Total, Ticket;
double StopLossLevel, TakeProfitLevel;
if (EachTickMode && Bars != BarCount) TickCheck = False;
Total = OrdersTotal();
Order = SIGNAL_NONE;
//+------------------------------------------------------------------+
//| Variable Begin |
//+------------------------------------------------------------------+
double Buy1_1 = iMA(NULL, 0, 1, 0, MODE_SMA, PRICE_OPEN, Current + 0);
double Buy1_2 = iMA(NULL, 0, 50, 0, MODE_SMA, PRICE_CLOSE, Current + 0);
double Buy2_1 = iMA(NULL, 0, 1, 0, MODE_SMA, PRICE_CLOSE, Current + 1);
double Buy2_2 = iMA(NULL, 0, 50, 0, MODE_SMA, PRICE_CLOSE, Current + 0);
double Sell1_1 = iMA(NULL, 0, 1, 0, MODE_SMA, PRICE_OPEN, Current + 0);
double Sell1_2 = iMA(NULL, 0, 50, 0, MODE_SMA, PRICE_CLOSE, Current + 0);
double Sell2_1 = iMA(NULL, 0, 1, 0, MODE_SMA, PRICE_CLOSE, Current + 1);
double Sell2_2 = iMA(NULL, 0, 50, 0, MODE_SMA, PRICE_CLOSE, Current + 0);
double CloseBuy1_1 = iMA(NULL, 0, 1, 0, MODE_SMA, PRICE_OPEN, Current + 0);
double CloseBuy1_2 = iMA(NULL, 0, 50, 0, MODE_SMA, PRICE_CLOSE, Current + 0);
double CloseSell1_1 = iMA(NULL, 0, 1, 0, MODE_SMA, PRICE_OPEN, Current + 0);
double CloseSell1_2 = iMA(NULL, 0, 50, 0, MODE_SMA, PRICE_CLOSE, Current + 0);
//+------------------------------------------------------------------+
//| Variable End |
//+------------------------------------------------------------------+
//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
//+------------------------------------------------------------------+
//| Signal Begin(Exit Buy) |
//+------------------------------------------------------------------+
if (CloseBuy1_1 < CloseBuy1_2) Order = SIGNAL_CLOSEBUY;
//+------------------------------------------------------------------+
//| Signal End(Exit Buy) |
//+------------------------------------------------------------------+
if (Order == SIGNAL_CLOSEBUY && ((EachTickMode && !TickCheck) || (!EachTickMode && (Bars != BarCount)))) {
OrderClose(OrderTicket(), OrderLots(), Bid, Slippage, MediumSeaGreen);
if (SignalMail) SendMail("[Signal Alert]", "[" + Symbol() + "] " + DoubleToStr(Bid, Digits) + " Close Buy");
if (!EachTickMode) BarCount = Bars;
IsTrade = False;
continue;
}
//Trailing stop
if(UseTrailingStop && TrailingStop > 0) {
if(Bid - OrderOpenPrice() > Point * TrailingStop) {
if(OrderStopLoss() < Bid - Point * TrailingStop) {
OrderModify(OrderTicket(), OrderOpenPrice(), Bid - Point * TrailingStop, OrderTakeProfit(), 0, MediumSeaGreen);
if (!EachTickMode) BarCount = Bars;
continue;
}
}
}
} else {
//Close
//+------------------------------------------------------------------+
//| Signal Begin(Exit Sell) |
//+------------------------------------------------------------------+
if (CloseSell1_1 > CloseSell1_2) Order = SIGNAL_CLOSESELL;
//+------------------------------------------------------------------+
//| Signal End(Exit Sell) |
//+------------------------------------------------------------------+
if (Order == SIGNAL_CLOSESELL && ((EachTickMode && !TickCheck) || (!EachTickMode && (Bars != BarCount)))) {
OrderClose(OrderTicket(), OrderLots(), Ask, Slippage, DarkOrange);
if (SignalMail) SendMail("[Signal Alert]", "[" + Symbol() + "] " + DoubleToStr(Ask, Digits) + " Close Sell");
if (!EachTickMode) BarCount = Bars;
IsTrade = False;
continue;
}
//Trailing stop
if(UseTrailingStop && TrailingStop > 0) {
if((OrderOpenPrice() - Ask) > (Point * TrailingStop)) {
if((OrderStopLoss() > (Ask + Point * TrailingStop)) || (OrderStopLoss() == 0)) {
OrderModify(OrderTicket(), OrderOpenPrice(), Ask + Point * TrailingStop, OrderTakeProfit(), 0, DarkOrange);
if (!EachTickMode) BarCount = Bars;
continue;
}
}
}
}
}
}
//+------------------------------------------------------------------+
//| Signal Begin(Entry) |
//+------------------------------------------------------------------+
if (Buy1_1 > Buy1_2 && Buy2_1 < Buy2_2) Order = SIGNAL_BUY;
if (Sell1_1 < Sell1_2 && Sell2_1 > Sell2_2) Order = SIGNAL_SELL;
//+------------------------------------------------------------------+
//| Signal End |
//+------------------------------------------------------------------+
//Buy
if (Order == SIGNAL_BUY && ((EachTickMode && !TickCheck) || (!EachTickMode && (Bars != BarCount)))) {
if(!IsTrade) {
//Check free margin
if (AccountFreeMargin() < (1000 * Lots)) {
Print("We have no money. Free Margin = ", AccountFreeMargin());
return(0);
}
if (UseStopLoss) StopLossLevel = Ask - StopLoss * Point; else StopLossLevel = 0.0;
if (UseTakeProfit) TakeProfitLevel = Ask + TakeProfit * Point; else TakeProfitLevel = 0.0;
Ticket = OrderSend(Symbol(), OP_BUY, Lots, Ask, Slippage, StopLossLevel, TakeProfitLevel, "Buy(#" + MagicNumber + ")", MagicNumber, 0, DodgerBlue);
if(Ticket > 0) {
if (OrderSelect(Ticket, SELECT_BY_TICKET, MODE_TRADES)) {
Print("BUY order opened : ", OrderOpenPrice());
if (SignalMail) SendMail("[Signal Alert]", "[" + Symbol() + "] " + DoubleToStr(Ask, Digits) + " Open Buy");
} else {
Print("Error opening BUY order : ", GetLastError());
}
}
if (EachTickMode) TickCheck = True;
if (!EachTickMode) BarCount = Bars;
return(0);
}
}
//Sell
if (Order == SIGNAL_SELL && ((EachTickMode && !TickCheck) || (!EachTickMode && (Bars != BarCount)))) {
if(!IsTrade) {
//Check free margin
if (AccountFreeMargin() < (1000 * Lots)) {
Print("We have no money. Free Margin = ", AccountFreeMargin());
return(0);
}
if (UseStopLoss) StopLossLevel = Bid + StopLoss * Point; else StopLossLevel = 0.0;
if (UseTakeProfit) TakeProfitLevel = Bid - TakeProfit * Point; else TakeProfitLevel = 0.0;
Ticket = OrderSend(Symbol(), OP_SELL, Lots, Bid, Slippage, StopLossLevel, TakeProfitLevel, "Sell(#" + MagicNumber + ")", MagicNumber, 0, DeepPink);
if(Ticket > 0) {
if (OrderSelect(Ticket, SELECT_BY_TICKET, MODE_TRADES)) {
Print("SELL order opened : ", OrderOpenPrice());
if (SignalMail) SendMail("[Signal Alert]", "[" + Symbol() + "] " + DoubleToStr(Bid, Digits) + " Open Sell");
} else {
Print("Error opening SELL order : ", GetLastError());
}
}
if (EachTickMode) TickCheck = True;
if (!EachTickMode) BarCount = Bars;
return(0);
}
}
if (!EachTickMode) BarCount = Bars;
return(0);
}
//+------------------------------------------------------------------+
Re: script multiples entrées et sorties
pardon pour les fautes!
notamment: que beaucoup ont dû rencontreR
notamment: que beaucoup ont dû rencontreR
- Fabien LABROUSSE
- Administrateur
- Messages : 17035
- Inscription : 17 mars 2008, 19:41
- Localisation : Paris, France
Re: script multiples entrees et sorties
Pas de soucis. Tu peux éditer ton message pour corriger ça si ça te déranges, mais moi les fautes tant que ça reste lisible ça ne me dérange pas même si j'essaye d'y faire attention.luc31 a écrit :pardon pour les fautes!
notamment: que beaucoup ont dû rencontreR
Je vais tester ton ea et voir ce qui ne marche pas.
La Structure (par VideoBourse) : Formation sur mesure et évolutive pour optimiser compréhension et résultats en trading
Informations et inscriptions : https://forms.gle/A2vnZduSwv2wPFSS7
Contact et échanges avec la communauté : Discord, mail, téléphone, LinkedIn...
Marchés en aparté : Témoignages de traders, investisseurs, analystes et économistes sur les marchés financiers
Re: script multiples entrees et sorties
Je vais être un peu dur mais je résume ton post :
"Voici un petit script de débutant qui ne marche pas et m'empêche de progresser"
"This MQL is generated by Expert Advisor Builder"
charabia incompéhensible et interminable
Bref, non merci
Si tu comptes vraiment te mettre à la programmation d'EA, ça te prendra max 30 lignes à programmer, il fonctionnera et ton code sera compréhensible pour le commun des mortels
"Voici un petit script de débutant qui ne marche pas et m'empêche de progresser"
"This MQL is generated by Expert Advisor Builder"
charabia incompéhensible et interminable
Bref, non merci
Si tu comptes vraiment te mettre à la programmation d'EA, ça te prendra max 30 lignes à programmer, il fonctionnera et ton code sera compréhensible pour le commun des mortels
- Fabien LABROUSSE
- Administrateur
- Messages : 17035
- Inscription : 17 mars 2008, 19:41
- Localisation : Paris, France
Re: script multiples entrees et sorties
Tu as une dent contre les générateurs d'experts advisors dhaos?DhaoS a écrit :Si tu comptes vraiment te mettre à la programmation d'EA, ça te prendra max 30 lignes à programmer, il fonctionnera et ton code sera compréhensible pour le commun des mortels
Moi perso ça ma bien aidé à mes débuts dans la programmation, et je dirai même que c'est un des éléments qui ma motivé pour m'y mettre vraiment, mais c'est sûre qu'à terme, on est beaucoup plus efficace lorsque l'on maîtrise vraiment le codage, ce qui n'est pas encore mon cas.
La Structure (par VideoBourse) : Formation sur mesure et évolutive pour optimiser compréhension et résultats en trading
Informations et inscriptions : https://forms.gle/A2vnZduSwv2wPFSS7
Contact et échanges avec la communauté : Discord, mail, téléphone, LinkedIn...
Marchés en aparté : Témoignages de traders, investisseurs, analystes et économistes sur les marchés financiers
Re: script multiples entrees et sorties
Par analogie c'est un peu comme le bon français et le sms (et encore la comparaison est gentille)
Si tu commençais à voir des étrangers apprendre le français en commençant par du langage sms et qu'ils demandent (même poliment) de les corriger pour les aider à apprendre le français, tu en penserais quoi?
C'est un peu fort quand même...
Perso si j'avais du commencer à programmer du mql4 en analysant du code automatique je pense que je m'y serais jamais mis...c'est long, moche et peu compréhensible (en même temps normalement c'est pas fait pour être lu derrière)
Si tu commençais à voir des étrangers apprendre le français en commençant par du langage sms et qu'ils demandent (même poliment) de les corriger pour les aider à apprendre le français, tu en penserais quoi?
C'est un peu fort quand même...
Perso si j'avais du commencer à programmer du mql4 en analysant du code automatique je pense que je m'y serais jamais mis...c'est long, moche et peu compréhensible (en même temps normalement c'est pas fait pour être lu derrière)
- Fabien LABROUSSE
- Administrateur
- Messages : 17035
- Inscription : 17 mars 2008, 19:41
- Localisation : Paris, France
Re: script multiples entrees et sorties
Ok je vois ce que tu veux dire Dhaos.
luc31, chez toi l'expert ne prend aucune position, ou le problème est autre part?
Car chez moi il prend bien quelques positions, mais il y a des messages d'erreur dans le journal type:
"2010.07.26 15:58:14 2010.05.03 04:00 Luc31 EURUSD,H4: OrderClose error 4107"
"2010.07.26 15:58:14 2010.05.03 04:00 Luc31 EURUSD,H4: OrderClose error 4107"
luc31, chez toi l'expert ne prend aucune position, ou le problème est autre part?
Car chez moi il prend bien quelques positions, mais il y a des messages d'erreur dans le journal type:
"2010.07.26 15:58:14 2010.05.03 04:00 Luc31 EURUSD,H4: OrderClose error 4107"
"2010.07.26 15:58:14 2010.05.03 04:00 Luc31 EURUSD,H4: OrderClose error 4107"
La Structure (par VideoBourse) : Formation sur mesure et évolutive pour optimiser compréhension et résultats en trading
Informations et inscriptions : https://forms.gle/A2vnZduSwv2wPFSS7
Contact et échanges avec la communauté : Discord, mail, téléphone, LinkedIn...
Marchés en aparté : Témoignages de traders, investisseurs, analystes et économistes sur les marchés financiers