bonjour
j'ai un souci, je ne sais pas du tout "programmer" avec mt4 j'ai deja eu beaucoup de mal avec les macros excell et je n'au absolument pas le temps d'apprendre malheureusement pour moi.
je souhaiterai avoir un indicateur sur mt4 qui me donne comme sur bourso ou ailleurs, a l'instant T l'evolution de l'indice que je trade sur mon graphique.
j'ai trouve un indicateur qui fait le boulot, seul hic, il prend pas en compte les bon horaires du coup le % n'est pas le bon.
si une ame charitable pouvait me retravailler le code pour le cac 40, le dow et le dax ou alors m'expliquer comment faire evoluer l'indicateur en fonction de l'indice que je trade, j' apprécierai enormement.
l'indicateur en question c'est celui ci
https://www.mql5.com/en/code/10165
comme explique précédemment, il prend en compte le cours de cloture et d'ouverture de la plateforme et non celui de 9hr et 17h r 30, du coup les % ne sont pas bon.
je colle ici le code
merci
You can modify the color and size:
Color: You can change the color for Up Movement, Down Movement and No Movement
Size: You can change the text font size and the arrow size
You can modify the position of text and arrow:
X_Position You can modify X position (distance) from corner
Y_Position You can modify Y position (distance) from corner
Corner_Position You can select the corner position (0: Top Left / 1: Top Right / 2: Bottom Left / 3: Bottom Right)
------------------------------------------------------------------------------------------------
*/
#property indicator_chart_window
//----------------------------------------------------
extern int Font_Size = 8;
extern int Arrow_Size = 10;
extern color Up_Color = Green;
extern color Down_Color = Red;
extern color No_Mvt_Color = Blue;
extern int X_Position_Text = 3;
extern int Y_Position_Text = 3;
extern int Corner_Position_Text = 2;
extern int X_Position_Arrow = 3;
extern int Y_Position_Arrow = 90;
extern int Corner_Position_Arrow = 2;
// ---------------------------------------------------
#define OBJECT "DailyChange"
#define OBJECT1 "ArrowChange"
int start()
{
double ClPrice_D1 = iClose(NULL, PERIOD_D1, 1);
double ActualBid = Bid;
double PercChange = ((ActualBid - ClPrice_D1)/ClPrice_D1)*100;
string ArrowUp = "p"; // 112 Up arrow code
string ArrowDn = "q"; // 113 Down arrow code
string Arrow0 = "";
string Arrow;
color Obj_Color;
string PerChg = "D.Ch.: "+DoubleToStr(PercChange, 2) + " %";
if(PercChange > 0) {Arrow = ArrowUp; Obj_Color = Up_Color;}
if(PercChange < 0) {Arrow = ArrowDn; Obj_Color = Down_Color;}
if(PercChange == 0) {Arrow = Arrow0; Obj_Color = No_Mvt_Color;}
string ArrowChg = Arrow;
if(ObjectFind(OBJECT) < 0)
{
ObjectCreate (OBJECT, OBJ_LABEL, 0, 0, 0);
ObjectSet (OBJECT, OBJPROP_CORNER, Corner_Position_Text);
ObjectSet (OBJECT, OBJPROP_YDISTANCE, X_Position_Text);
ObjectSet (OBJECT, OBJPROP_XDISTANCE, Y_Position_Text);
ObjectSetText (OBJECT, PerChg, Font_Size, "Verdana", Obj_Color);
}
ObjectSetText(OBJECT, PerChg, Font_Size, "Verdana", Obj_Color);
if(ObjectFind(OBJECT1) < 0)
{
ObjectCreate (OBJECT1, OBJ_LABEL, 0, 0, 0);
ObjectSet (OBJECT1, OBJPROP_CORNER, Corner_Position_Arrow);
ObjectSet (OBJECT1, OBJPROP_YDISTANCE, X_Position_Arrow);
ObjectSet (OBJECT1, OBJPROP_XDISTANCE, Y_Position_Arrow);
ObjectSetText (OBJECT1, ArrowChg, Arrow_Size, "Wingdings 3", Obj_Color);
}
ObjectSetText(OBJECT1, ArrowChg, Arrow_Size, "Wingdings 3", Obj_Color);
WindowRedraw();
}
//--- INIT AND DEINIT ------------------------------------- //
int init()
{
}
int deinit()
{
ObjectDelete(OBJECT);
ObjectDelete(OBJECT1);
j'ai un souci, je ne sais pas du tout "programmer" avec mt4 j'ai deja eu beaucoup de mal avec les macros excell et je n'au absolument pas le temps d'apprendre malheureusement pour moi.
je souhaiterai avoir un indicateur sur mt4 qui me donne comme sur bourso ou ailleurs, a l'instant T l'evolution de l'indice que je trade sur mon graphique.
j'ai trouve un indicateur qui fait le boulot, seul hic, il prend pas en compte les bon horaires du coup le % n'est pas le bon.
si une ame charitable pouvait me retravailler le code pour le cac 40, le dow et le dax ou alors m'expliquer comment faire evoluer l'indicateur en fonction de l'indice que je trade, j' apprécierai enormement.
l'indicateur en question c'est celui ci
https://www.mql5.com/en/code/10165
comme explique précédemment, il prend en compte le cours de cloture et d'ouverture de la plateforme et non celui de 9hr et 17h r 30, du coup les % ne sont pas bon.
je colle ici le code
merci
You can modify the color and size:
Color: You can change the color for Up Movement, Down Movement and No Movement
Size: You can change the text font size and the arrow size
You can modify the position of text and arrow:
X_Position You can modify X position (distance) from corner
Y_Position You can modify Y position (distance) from corner
Corner_Position You can select the corner position (0: Top Left / 1: Top Right / 2: Bottom Left / 3: Bottom Right)
------------------------------------------------------------------------------------------------
*/
#property indicator_chart_window
//----------------------------------------------------
extern int Font_Size = 8;
extern int Arrow_Size = 10;
extern color Up_Color = Green;
extern color Down_Color = Red;
extern color No_Mvt_Color = Blue;
extern int X_Position_Text = 3;
extern int Y_Position_Text = 3;
extern int Corner_Position_Text = 2;
extern int X_Position_Arrow = 3;
extern int Y_Position_Arrow = 90;
extern int Corner_Position_Arrow = 2;
// ---------------------------------------------------
#define OBJECT "DailyChange"
#define OBJECT1 "ArrowChange"
int start()
{
double ClPrice_D1 = iClose(NULL, PERIOD_D1, 1);
double ActualBid = Bid;
double PercChange = ((ActualBid - ClPrice_D1)/ClPrice_D1)*100;
string ArrowUp = "p"; // 112 Up arrow code
string ArrowDn = "q"; // 113 Down arrow code
string Arrow0 = "";
string Arrow;
color Obj_Color;
string PerChg = "D.Ch.: "+DoubleToStr(PercChange, 2) + " %";
if(PercChange > 0) {Arrow = ArrowUp; Obj_Color = Up_Color;}
if(PercChange < 0) {Arrow = ArrowDn; Obj_Color = Down_Color;}
if(PercChange == 0) {Arrow = Arrow0; Obj_Color = No_Mvt_Color;}
string ArrowChg = Arrow;
if(ObjectFind(OBJECT) < 0)
{
ObjectCreate (OBJECT, OBJ_LABEL, 0, 0, 0);
ObjectSet (OBJECT, OBJPROP_CORNER, Corner_Position_Text);
ObjectSet (OBJECT, OBJPROP_YDISTANCE, X_Position_Text);
ObjectSet (OBJECT, OBJPROP_XDISTANCE, Y_Position_Text);
ObjectSetText (OBJECT, PerChg, Font_Size, "Verdana", Obj_Color);
}
ObjectSetText(OBJECT, PerChg, Font_Size, "Verdana", Obj_Color);
if(ObjectFind(OBJECT1) < 0)
{
ObjectCreate (OBJECT1, OBJ_LABEL, 0, 0, 0);
ObjectSet (OBJECT1, OBJPROP_CORNER, Corner_Position_Arrow);
ObjectSet (OBJECT1, OBJPROP_YDISTANCE, X_Position_Arrow);
ObjectSet (OBJECT1, OBJPROP_XDISTANCE, Y_Position_Arrow);
ObjectSetText (OBJECT1, ArrowChg, Arrow_Size, "Wingdings 3", Obj_Color);
}
ObjectSetText(OBJECT1, ArrowChg, Arrow_Size, "Wingdings 3", Obj_Color);
WindowRedraw();
}
//--- INIT AND DEINIT ------------------------------------- //
int init()
{
}
int deinit()
{
ObjectDelete(OBJECT);
ObjectDelete(OBJECT1);