Spezifikation
I need someone to add on some more time intervals to the Trendlines indicator. Currently its for the 5M,15M,1HR,4HR.
I need the 30M,2HR,8HR,Daily and Weekly added. Now i know on MT4 you don't actually have the 2HR and 8HR time interval but i have a time converter indicator. Nonethless thats the code below and i simply again just need the 30Min,2HR,8HR,Daily and Weekly added. Thanks a bunch.
//| Trendlines.mq4 |
//| Copyright © 2006, John Hitt |
//| jhitt@kanji.dyndns.org |
//+------------------------------------------------------------------+
#property copyright "Copyright © 2006, John Hitt"
#property link "jhitt@kanji.dyndns.org"
#property indicator_chart_window
extern color H4_R=RoyalBlue;
extern color H4_S=FireBrick;
extern color H1_R=RoyalBlue;
extern color H1_S=FireBrick;
extern color M15_R=RoyalBlue;
extern color M15_S=FireBrick;
#define RESISTANCE 1
#define SUPPORT 2
//+------------------------------------------------------------------+
//| Custom indicator initialization function |
//+------------------------------------------------------------------+
int init()
{
//---- indicators
//----
return(0);
}
//+------------------------------------------------------------------+
//| Custom indicator deinitialization function |
//+------------------------------------------------------------------+
int deinit()
{
//----
ObjectDelete("H4_R");
ObjectDelete("H4_S");
ObjectDelete("H1_R");
ObjectDelete("H1_S");
ObjectDelete("M15_R");
ObjectDelete("M15_S");
ObjectDelete("M5_R");
ObjectDelete("M5_S");
//----
return(0);
}
//+------------------------------------------------------------------+
//| Custom indicator iteration function |
//+------------------------------------------------------------------+
int start()
{
datetime currentbar = 0;
if (currentbar != Time[0])
{
switch (Period())
{
case PERIOD_H4:
Draw_H4_Trends();
break;
case PERIOD_H1:
Draw_H4_Trends();
Draw_H1_Trends();
break;
case PERIOD_M15:
Draw_H1_Trends();
Draw_M15_Trends();
break;
case PERIOD_M5:
Draw_M15_Trends();
break;
}
}
return(0);
}
void Draw_M15_Trends()
{
int sbar=0;
int ebar=0;
int i;
double rate_array[][6];
ArrayCopyRates(rate_array, Symbol(), PERIOD_M15);
for (i=2; i < Bars; i++)
{
if (HigherHigh(i, 1, rate_array) == true)
{
//Print("HiherHigh: ", i);
if (ebar == 0)
ebar = i;
else if (sbar == 0 && rate_array[i][3] > rate_array[ebar][3]) // use 3 for high
sbar = i;
}
if (sbar !=0 && ebar !=0)
break;
}
DrawTrendline ("M15_R", ebar, sbar, PERIOD_M15, RESISTANCE, rate_array);
ebar = 0;
sbar = 0;
for (i=2; i < Bars; i++)
{
if (LowerLow(i, 1, rate_array) == true)
{
if (ebar == 0)
ebar = i;
else if (sbar == 0 && rate_array[i][2] < rate_array[ebar][2]) // use 2 for low
sbar = i;
}
if (sbar !=0 && ebar !=0)
break;
}
DrawTrendline ("M15_S", ebar, sbar, PERIOD_M15, SUPPORT, rate_array);
}
void Draw_H1_Trends()
{
int sbar=0;
int ebar=0;
int i;
double rate_array[][6];
ArrayCopyRates(rate_array, Symbol(), PERIOD_H1);
for (i=2; i < Bars; i++)
{
if (HigherHigh(i, 1, rate_array) == true)
{
//Print("HiherHigh: ", i);
if (ebar == 0)
ebar = i;
else if (sbar == 0 && rate_array[i][3] > rate_array[ebar][3]) // use 3 for high
sbar = i;
}
if (sbar !=0 && ebar !=0)
break;
}
DrawTrendline ("H1_R", ebar, sbar, PERIOD_H1, RESISTANCE, rate_array);
ebar = 0;
sbar = 0;
for (i=2; i < Bars; i++)
{
if (LowerLow(i, 1, rate_array) == true)
{
if (ebar == 0)
ebar = i;
else if (sbar == 0 && rate_array[i][2] < rate_array[ebar][2]) // use 2 for low
sbar = i;
}
if (sbar !=0 && ebar !=0)
break;
}
DrawTrendline ("H1_S", ebar, sbar, PERIOD_H1, SUPPORT, rate_array);
}
void Draw_H4_Trends()
{
int sbar=0;
int ebar=0;
int i;
double rate_array[][6];
ArrayCopyRates(rate_array, Symbol(), PERIOD_H4);
for (i=2; i < Bars; i++)
{
if (HigherHigh(i, 1, rate_array) == true)
{
//Print("HiherHigh: ", i);
if (ebar == 0)
ebar = i;
else if (sbar == 0 && rate_array[i][3] > rate_array[ebar][3]) // use 3 for high
sbar = i;
}
if (sbar !=0 && ebar !=0)
break;
}
DrawTrendline ("H4_R", ebar, sbar, PERIOD_H4, RESISTANCE, rate_array);
ebar = 0;
sbar = 0;
for (i=2; i < Bars; i++)
{
if (LowerLow(i, 1, rate_array) == true)
{
if (ebar == 0)
ebar = i;
else if (sbar == 0 && rate_array[i][2] < rate_array[ebar][2]) // use 2 for low
sbar = i;
}
if (sbar !=0 && ebar !=0)
break;
}
DrawTrendline ("H4_S", ebar, sbar, PERIOD_H4, SUPPORT, rate_array);
}
bool HigherHigh (int point, int shift, double array[][6])
{
if (shift == 0)
return (true);
if (array[point][3] >= array[point+shift][3] && array[point][3] >= array[point-shift][3])
{
if (array[point][3] == array[point+shift][3] || array[point][3] == array[point-shift][3])
{
if ((point - shift - 1) == 0)
return (false);
if (array[point][3] > array[point+shift+1][3] && array[point][3] > array[point-shift-1][3])
return (HigherHigh (point, shift-1, array));
else
return (false);
} else {
return (HigherHigh (point, shift-1, array));
}
}
else
return (false);
}
bool LowerLow (int point, int shift, double array[][6])
{
if (shift == 0)
return (true);
if (array[point][2] <= array[point+shift][2] && array[point][2] <= array[point-shift][2])
{
if (array[point][2] == array[point+shift][2] || array[point][2] == array[point-shift][2])
{
if ((point-shift-1) == 0)
return (false);
if (array[point][2] < array[point+shift+1][2] && array[point][2] < array[point-shift-1][2])
return(LowerLow (point, shift-1, array));
else
return (false);
} else {
return(LowerLow (point, shift-1, array));
}
}
else
return (false);
}
int GetRealPosition(int p1, double array[][6], int which, datetime value, double peak)
{
int i;
for (i=0; i < Bars; i++)
{
if (array[i][0] == value || array[i][0] < value)
{
if (which == RESISTANCE)
{
if (array[i][3] == peak) return (i);
if (array[i-1][3] == peak) return (i-1);
if (array[i-2][3] == peak) return (i-2);
if (array[i-3][3] == peak) return (i-3);
} else {
if (array[i][2] == peak) return (i);
if (array[i-1][2] == peak) return (i-1);
if (array[i-2][2] == peak) return (i-2);
if (array[i-3][2] == peak) return (i-3);
}
if (array[i][0] < value) return (i);
}
}
return (-1);
}
int DrawTrendline (string name, int p1, int p2, int timeframe, int which, double r_array[][6])
{
color hue;
int thickness = 1;
int style = STYLE_DASH;
double array[][6];
ArrayCopyRates(array, Symbol(), Period());
if (which == RESISTANCE)
{
hue = RoyalBlue;
if (Period() != timeframe)
{
p1 = GetRealPosition(p1, array, which, r_array[p1][0], r_array[p1][3]);
p2 = GetRealPosition(p2, array, which, r_array[p2][0], r_array[p2][3]);
}
}
else
{
hue = FireBrick;
if (Period() != timeframe)
{
p1 = GetRealPosition(p1, array, which, r_array[p1][0], r_array[p1][2]);
p2 = GetRealPosition(p2, array, which, r_array[p2][0], r_array[p2][2]);
}
}
switch(timeframe)
{
case PERIOD_H4:
thickness = 2;
style = STYLE_SOLID;
if (which == RESISTANCE)
hue = H4_R;
else
hue = H4_S;
break;
case PERIOD_H1:
style = STYLE_SOLID;
thickness = 1;
if (which == RESISTANCE)
hue = H1_R;
else
hue = H1_S;
break;
case PERIOD_M15:
style = STYLE_DASHDOTDOT;
thickness = 1;
if (which == RESISTANCE)
hue = M15_R;
else
hue = M15_S;
break;
}
if (ObjectFind(name) < 0)
{
if (which == SUPPORT)
ObjectCreate(name, OBJ_TREND, 0, array[p2][0], array[p2][2], array[p1][0], array[p1][2]);
else
ObjectCreate(name, OBJ_TREND, 0, array[p2][2], array[p2][3], array[p1][0], array[p1][3]);
ObjectSet(name, OBJPROP_COLOR, hue);
ObjectSet(name, OBJPROP_RAY, true);
ObjectSet(name, OBJPROP_BACK, true);
ObjectSet(name, OBJPROP_WIDTH, thickness);
ObjectSet(name, OBJPROP_STYLE, style);
}
if (which == SUPPORT)
{ // Lows (0 == Time)
ObjectMove (name, 0, array[p2][0], array[p2][2]);
ObjectMove (name, 1, array[p1][0], array[p1][2]);
}
else
{ // Highs
ObjectMove (name, 0, array[p2][0], array[p2][3]);
ObjectMove (name, 1, array[p1][0], array[p1][3]);
}
ObjectsRedraw();
return(0);
}
Bewerbungen
1
Bewertung
Projekte
700
56%
Schlichtung
44
30%
/
32%
Frist nicht eingehalten
114
16%
Arbeitet
2
Bewertung
Projekte
1374
72%
Schlichtung
113
28%
/
48%
Frist nicht eingehalten
342
25%
Arbeitet
3
Bewertung
Projekte
159
61%
Schlichtung
40
18%
/
63%
Frist nicht eingehalten
70
44%
Frei
4
Bewertung
Projekte
201
42%
Schlichtung
44
9%
/
68%
Frist nicht eingehalten
47
23%
Frei
5
Bewertung
Projekte
809
73%
Schlichtung
30
33%
/
37%
Frist nicht eingehalten
194
24%
Frei
6
Bewertung
Projekte
218
50%
Schlichtung
6
17%
/
67%
Frist nicht eingehalten
11
5%
Frei
7
Bewertung
Projekte
140
49%
Schlichtung
9
56%
/
0%
Frist nicht eingehalten
27
19%
Frei
8
Bewertung
Projekte
394
63%
Schlichtung
70
53%
/
26%
Frist nicht eingehalten
198
50%
Frei
9
Bewertung
Projekte
140
46%
Schlichtung
19
42%
/
16%
Frist nicht eingehalten
32
23%
Frei
10
Bewertung
Projekte
15
47%
Schlichtung
6
33%
/
17%
Frist nicht eingehalten
4
27%
Frei
11
Bewertung
Projekte
20
30%
Schlichtung
5
20%
/
80%
Frist nicht eingehalten
5
25%
Frei
12
Bewertung
Projekte
0
0%
Schlichtung
0
Frist nicht eingehalten
0
Frei
13
Bewertung
Projekte
5
40%
Schlichtung
0
Frist nicht eingehalten
0
Frei
Ähnliche Aufträge
I have the mq5 file, I need a buffer adding to the indicator, so it appears in the data window so I can reference it later in an EA. As the below screenshot shows, there is a median ray line from yesterday (the dashed horizontal line) - I want this value in the data window called Median Ray. I want this to be a single value per day, so todays Median Ray would be 17868, and so on each day. So I want all the Developing
Creating an indicator for metatrader 4
30 - 50 USD
I would like to develop my own indicator on metatrader 4 and tradingview. We would start with a basic version that we would improve later. It is an indicator based on several analyses and which would provide several indications. I am looking for someone who can develop on MT4 and Mt5, initially I would like to do it on mt4 and then on mt5. If you have expertise in pinescript it is a plus because I would like to
Indicator Conversion
30+ USD
I urgently require swift assistance to convert a complex indicator into a fully functional scanner, capable of automatically sending real-time data, alerts, and notifications via email, ensuring seamless integration and prompt delivery of critical information to facilitate informed decision-making and timely action
Make indicator lighter/faster
30+ USD
I need to improve the code of an indicator that is too heavy and slow when running and when used with iCustom in an EA. No other changes to the indicator are requested: the original features of the indicator should remain as theay are. I'll provide the indicator after job acceptance. I request final source code mq5 file. Thank you Regards
I have a mt5 indicator that is working perfectly but I will like to make it an expert advisor to have an automated trade. I will be glad if I can get a well experienced developer to execute this project. Thanks
O TRABALHO CONSISTE NA MUDANÇA DO HISTOGRAMA DO INDICADOR TREDN DIRECTION AND FORCE DSEMA SMOOTHED PARA O HISTOGRAMA DA FOTO ANEXA, OBEDECENDO AS TRES CORES VERDE (UP, VERMELHOR(DOWN) E CINZA(TREND). O MESMO TEM QUE ODECER O MESMO CALCULO E COLORIR DA MESMA FORMA POREM COM HISTOGRAMA DDE FORMATO DIFERENTE
I need someone who knows how to integrate hedging strategy to my simple existing EA for mt5
30 - 50 USD
If you are knowledgeable in hedging strategy we can chat. I created my simple EA using Fxdreema , so you only need to modify it for me. There are two parts of the EA , 1. Is the execution strategy 2. Is the money management strategy (hedging). I already created number 1 which is the execution of trades , I only need someone who can implement hedging in every orders the EA create. Additional Parameters needed. Trade
We are interested in a TradingView indicator
100 - 150 USD
We are interested in a TradingView indicator that reads candlestick pattern shapes and shows the location of entry and exit points on a candlestick chart. What services do you provide related to this
Hello Im looking for professional trading developer who htf ready made trading with best and working strategy with low risk level with average of 30 to 60 percent profit margin, broker is not problem, any broker is welcomed and any trading pairs are welcomed as well
the sl doesnt work i want the tp logic to remain i need the trend direction fucntion tow ork i the trend is up then only buys if down only sells i need the fibo nacci fucntion to work as well and the flat zone function to work as well and i need the code to trade 1% of the balance //+------------------------------------------------------------------+ //| US500_EA.mq4 | //|
Projektdetails
Budget
10 - 15 USD
Für die Entwickler
9
- 13.5
USD
Ausführungsfristen
von 1 bis 3 Tag(e)