Aide au codage - page 491

 
brijeshsinh:
bonjour,

mladen, mr tools pouvez-vous s'il vous plaît aider à changer les paramètres suivants dans l'indicateur FXUltraTrend affiché ci-dessous à

--- Afficher dans une fenêtre séparée sous forme de ligne (ou d'histogramme) avec des flèches pour montrer le changement de couleur si possible (par défaut, dans les paramètres actuels, il peint les barres sur le graphique principal).

---- et si possible ajouter une colonne pour les différents paramètres, afin qu'ils puissent être modifiés selon nos souhaits. (dans le mode actuel par défaut, il n'y a pas de colonne pour ajouter des paramètres).

Je joins l'indicateur ci-dessous et son image pour vous

fxultratrend.mq4

J'espère que vous ne m'en voudrez pas de prendre un peu de temps pour vous, mais vous faites un excellent travail pour quelqu'un comme nous qui sommes nouveaux sur cette plateforme et qui ne connaissons pas la programmation.

Vous méritez vraiment d'être remercié par moi et par tous les membres de ce forum pour vos précieux efforts.

Merci pour la réponse rapide au message précédent.

Si vous avez le code source original (non décompilé) de cet indicateur, postez-le afin que quelqu'un puisse le modifier (je doute que quelqu'un puisse modifier un code décompilé).

 

Je n'ai que cet indicateur que j'ai posté.

merci pour la réponse mladen.

Je suis heureux de vous entendre à nouveau.

 
tfi_markets:
Bonjour Mladen,

vous avez raison, veuillez trouver le code ci-dessous qui appelle "OpenSell()".

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

//| OPEN BUY / OPEN SELL

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

//----------------------- BUY CONDITION

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

if(OrderType()==OP_SELL) break;

{

if(STC1!=STC2)

{

/*if(STC1STC1)BUY="true";*/

if(STC1STC1)

/*if((STC115) || (STC185)) // code for buy */

OpenBuy();

return(0);

}

openedOrders++;

}

//----------------------- SELL CONDITION

// if(STC1>STC0&&STC2<STC1)SELL="true";

//if((STC1>15 && STC285 && STC2<85)) // code for sell

if(STC1>STC0&&STC2<STC1) // code for sell

{

OpenSell();

return(0);

}

}

//----------------------- OPEN SELL

void OpenSell()

{

double lsStop = 0; if(sStopLoss>0) lsStop = NormalizeDouble(MarketInfo(s_symbol,MODE_BID)+sStopLoss *pPoint*pipMultiplier,digit);

double lsTake = 0; if(sTakeProfit>0) lsTake = NormalizeDouble(MarketInfo(s_symbol,MODE_BID)-sTakeProfit*pPoint*pipMultiplier,digit);

if(AccountFreeMargin()<(100*Lots)) { Print("We have no money. Free Margin = ",AccountFreeMargin()); return; }

// ECN

if(!EcnBroker)

dummyResult=OrderSend(s_symbol,OP_SELL,LotsOptimized(),MarketInfo(s_symbol,MODE_BID),Slippage*pipMultiplier,lsStop,lsTake,ExpertName,MAGIC,0,clOpenSell);

else

{

int sellTicket = OrderSend(s_symbol,OP_SELL,LotsOptimized(),MarketInfo(s_symbol,MODE_BID),Slippage*pipMultiplier,0,0,ExpertName,MAGIC,0,clOpenSell);

if(sellTicket >= 0)

bool sellOrderMod=OrderModify(sellTicket,OrderOpenPrice(),lsStop,lsTake,0,CLR_NONE);

if(sellOrderMod==false)

{

int ErrorCode = GetLastError();

string ErrDesc = ErrorDescription(ErrorCode);

string ErrAlert=StringConcatenate("Modify Sell Order - Error ",ErrorCode,": ",ErrDesc);

if(ShowAlerts==true) Alert(ErrAlert);

string ErrLog=StringConcatenate("Ask: ",MarketInfo(s_symbol,MODE_ASK)," Bid: ",MarketInfo(s_symbol,MODE_BID)," Ticket: ",sellTicket," Stop: ",lsStop," Profit: ",lsTake);

Print(ErrLog);

}

}

}

Vérifiez les erreurs que vous obtenez dans l'onglet experts ou journaux du terminal.

 
mladen:
Vérifiez les erreurs que vous obtenez dans l'onglet experts ou journaux du terminal.

Il n'y a pas de réelles erreurs, c'est justement ce qui me rend perplexe.

Cela ressemble à ceci :

2015.06.17 17:20:26.823 2014.07.29 17:10 SchaffTrendCircle_EA v1.3 EURUSD,M5: open #3 buy 0.10 EURUSD at 1.34175 ok

2015.06.17 17:20:26.799 2014.07.29 17:05 NonLag_Schaff_TrendCycle EURUSD,M5: Alert: EURUSD M5 at 17:05:00 Non Lag Schaff Trend Cycle changed direction to up

2015.06.17 17:20:26.792 2014.07.29 17:03 NonLag_Schaff_TrendCycle EURUSD,M5: Alert: EURUSD M5 at 17:03:13 Non Lag Schaff Trend Cycle changed direction to up

2015.06.17 17:20:26.714 2014.07.29 16:40 NonLag_Schaff_TrendCycle EURUSD,M5: Alert: EURUSD M5 at 16:40:00 Non Lag Schaff Trend Cycle changed direction to up

2015.06.17 17:20:26.064 2014.07.29 14:06 NonLag_Schaff_TrendCycle EURUSD,M5: Alert: EURUSD M5 at 14:06:09 Non Lag Schaff Trend Cycle changed direction to up

2015.06.17 17:20:25.827 2014.07.29 11:55 SchaffTrendCircle_EA v1.3 EURUSD,M5: close #2 buy 0.10 EURUSD at 1.34353 sl: 1.27353 tp: 1.74353 at price 1.34356

2015.06.17 17:20:25.818 2014.07.29 11:50 NonLag_Schaff_TrendCycle EURUSD,M5: Alert: EURUSD M5 at 11:50:01 Non Lag Schaff Trend Cycle changed direction to down

2015.06.17 17:20:25.816 2014.07.29 11:48 NonLag_Schaff_TrendCycle EURUSD,M5: Alert: EURUSD M5 at 11:48:17 Non Lag Schaff Trend Cycle changed direction to down

2015.06.17 17:20:25.486 2014.07.29 09:15 SchaffTrendCircle_EA v1.3 EURUSD,M5: modify #2 buy 0.10 EURUSD at 1.34353 sl: 1.27353 tp: 1.74353 ok

2015.06.17 17:20:25.486 2014.07.29 09:15 SchaffTrendCircle_EA v1.3 EURUSD,M5: open #2 buy 0.10 EURUSD at 1.34353 ok

2015.06.17 17:20:25.479 2014.07.29 09:12 NonLag_Schaff_TrendCycle EURUSD,M5: Alert: EURUSD M5 at 09:12:11 Non Lag Schaff Trend Cycle changed direction to up

2015.06.17 17:20:25.426 2014.07.29 08:45 SchaffTrendCircle_EA v1.3 EURUSD,M5: close #1 buy 0.10 EURUSD at 1.34345 sl: 1.27345 tp: 1.74345 at price 1.34277

2015.06.17 17:20:25.421 2014.07.29 08:42 NonLag_Schaff_TrendCycle EURUSD,M5: Alert: EURUSD M5 at 08:42:19 Non Lag Schaff Trend Cycle changed direction to down

2015.06.17 17:20:25.378 2014.07.29 08:05 SchaffTrendCircle_EA v1.3 EURUSD,M5: modify #1 buy 0.10 EURUSD at 1.34345 sl: 1.27345 tp: 1.74345 ok

2015.06.17 17:20:25.378 2014.07.29 08:05 SchaffTrendCircle_EA v1.3 EURUSD,M5: open #1 buy 0.10 EURUSD at 1.34345 ok

[/CODE]

I guess the problem may lie somewhere in there:

[CODE]

//----------------------- CLOSE BUY CONDITION

.

.

.

string ErrLog=StringConcatenate("Bid: ",MarketInfo(s_symbol,MODE_BID)," Lots: ",OrderLots()," Ticket: ",OrderTicket());

Print(ErrLog);

}

break;

} // mod.... maybe here.

}

}

//----------------------- CLOSE SELL CONDITION

.

.

.

ErrLog=StringConcatenate("Ask: ",MarketInfo(s_symbol,MODE_ASK)," Lots: ",OrderLots()," Ticket: ",OrderTicket());

Print(ErrLog);

}

break;

} // mod ----- maybe here.

}

}

}

}

 
tfi_markets:
Il n'y a pas de réelles erreurs, c'est exactement ce qui me rend perplexe.

Cela ressemble à ceci :

2015.06.17 17:20:26.823 2014.07.29 17:10 SchaffTrendCircle_EA v1.3 EURUSD,M5: open #3 buy 0.10 EURUSD at 1.34175 ok

2015.06.17 17:20:26.799 2014.07.29 17:05 NonLag_Schaff_TrendCycle EURUSD,M5: Alert: EURUSD M5 at 17:05:00 Non Lag Schaff Trend Cycle changed direction to up

2015.06.17 17:20:26.792 2014.07.29 17:03 NonLag_Schaff_TrendCycle EURUSD,M5: Alert: EURUSD M5 at 17:03:13 Non Lag Schaff Trend Cycle changed direction to up

2015.06.17 17:20:26.714 2014.07.29 16:40 NonLag_Schaff_TrendCycle EURUSD,M5: Alert: EURUSD M5 at 16:40:00 Non Lag Schaff Trend Cycle changed direction to up

2015.06.17 17:20:26.064 2014.07.29 14:06 NonLag_Schaff_TrendCycle EURUSD,M5: Alert: EURUSD M5 at 14:06:09 Non Lag Schaff Trend Cycle changed direction to up

2015.06.17 17:20:25.827 2014.07.29 11:55 SchaffTrendCircle_EA v1.3 EURUSD,M5: close #2 buy 0.10 EURUSD at 1.34353 sl: 1.27353 tp: 1.74353 at price 1.34356

2015.06.17 17:20:25.818 2014.07.29 11:50 NonLag_Schaff_TrendCycle EURUSD,M5: Alert: EURUSD M5 at 11:50:01 Non Lag Schaff Trend Cycle changed direction to down

2015.06.17 17:20:25.816 2014.07.29 11:48 NonLag_Schaff_TrendCycle EURUSD,M5: Alert: EURUSD M5 at 11:48:17 Non Lag Schaff Trend Cycle changed direction to down

2015.06.17 17:20:25.486 2014.07.29 09:15 SchaffTrendCircle_EA v1.3 EURUSD,M5: modify #2 buy 0.10 EURUSD at 1.34353 sl: 1.27353 tp: 1.74353 ok

2015.06.17 17:20:25.486 2014.07.29 09:15 SchaffTrendCircle_EA v1.3 EURUSD,M5: open #2 buy 0.10 EURUSD at 1.34353 ok

2015.06.17 17:20:25.479 2014.07.29 09:12 NonLag_Schaff_TrendCycle EURUSD,M5: Alert: EURUSD M5 at 09:12:11 Non Lag Schaff Trend Cycle changed direction to up

2015.06.17 17:20:25.426 2014.07.29 08:45 SchaffTrendCircle_EA v1.3 EURUSD,M5: close #1 buy 0.10 EURUSD at 1.34345 sl: 1.27345 tp: 1.74345 at price 1.34277

2015.06.17 17:20:25.421 2014.07.29 08:42 NonLag_Schaff_TrendCycle EURUSD,M5: Alert: EURUSD M5 at 08:42:19 Non Lag Schaff Trend Cycle changed direction to down

2015.06.17 17:20:25.378 2014.07.29 08:05 SchaffTrendCircle_EA v1.3 EURUSD,M5: modify #1 buy 0.10 EURUSD at 1.34345 sl: 1.27345 tp: 1.74345 ok

2015.06.17 17:20:25.378 2014.07.29 08:05 SchaffTrendCircle_EA v1.3 EURUSD,M5: open #1 buy 0.10 EURUSD at 1.34345 ok

[/CODE]

I guess the problem may lie somewhere in there:

[CODE]

//----------------------- CLOSE BUY CONDITION

.

.

.

string ErrLog=StringConcatenate("Bid: ",MarketInfo(s_symbol,MODE_BID)," Lots: ",OrderLots()," Ticket: ",OrderTicket());

Print(ErrLog);

}

break;

} // mod.... maybe here.

}

}

//----------------------- CLOSE SELL CONDITION

.

.

.

ErrLog=StringConcatenate("Ask: ",MarketInfo(s_symbol,MODE_ASK)," Lots: ",OrderLots()," Ticket: ",OrderTicket());

Print(ErrLog);

}

break;

} // mod ----- maybe here.

}

}

}

}

Cela signifie que les conditions d'entrée dans la procédure d'ouverture des ordres ne sont jamais remplies. Vérifiez les conditions dans ce cas

 

Bonjour Maîtres

Pouvez-vous me guider pour ajouter une cotation en direct dans le message d'alerte ?

merci

 
AAREMM:
Bonjour Masters

Pouvez-vous me guider pour ajouter une cotation en direct au message d'alerte ?

merci

Ajoutez simplement quelque chose comme DoubleToStr(price,_Digits) au message d'alerte.

 
mladen:
Ajoutez simplement quelque chose comme DoubleToStr(price,_Digits) au message d'alerte.

HaHaHa

J'ai essayé mais j'ai échoué

rsi_bollinger_bands_1.01_amp_lines__alerts_arrows.mq4

J'ai essayé, mais j'ai échoué.

L'erreur est la suivante : 'price' - undeclared identifier.

merci de votre attention

 
AAREMM:
HaHaHa

J'ai essayé mais j'ai échoué

rsi_bollinger_bands_1.01_amp_lines__alerts_arrows.mq4

Je n'ai pas de réponse à cette question.

L'erreur est la suivante 'price' - identifiant non déclaré

Merci pour votre attention

"price" a été placé là pour que vous puissiez le remplacer par le prix (ou la valeur) que vous souhaitez utiliser à la place du prix. Utilisez "Close[0]", "Ask", "Bid" ou tout autre prix (valeur) que vous souhaitez afficher dans l'alerte.

 
mladen:
"price" a été placé là pour que vous puissiez le remplacer par le prix (ou la valeur) que vous souhaitez utiliser à la place du prix. Utilisez "Close[0]", "Ask", "Bid" ou tout autre prix (valeur) que vous souhaitez afficher dans l'alerte.

Ok Monsieur, j'essaie à nouveau

Merci encore de me guider.

Je l'ai fait, merci beaucoup Monsieur mladen.

Raison: