Price Data Components
0
Views
0
Downloads
0
Favorites
Fibo_v1
//+------------------------------------------------------------------+
//| Fibo.mq4 |
//| Don Perry |
//| www.fxAdvisor.com |
//+------------------------------------------------------------------+
#property copyright "Don Perry"
#property link "donperry1[@t]gmail.com"
#property indicator_chart_window
//+------------------------------------------------------------------+
//| Custom indicator initialization function |
//+------------------------------------------------------------------+
int init()
{
//---- indicators
//----
return(0);
}
//+------------------------------------------------------------------+
//| Custom indicator deinitialization function |
//+------------------------------------------------------------------+
int deinit()
{
//----
ObjectDelete("Fibo");
//----
return(0);
}
//+------------------------------------------------------------------+
//| Custom indicator iteration function |
//+------------------------------------------------------------------+
extern int lookback = 24;
extern int lastbar = 0;
extern color FibColor= Green;
int start()
{
ObjectDelete("Fibo");
int counted_bars=IndicatorCounted();
//----
double lowest=1000, highest=0;
datetime T1,T2;
for(int i=lookback+lastbar;i>lastbar+1;i--)
{
double curLow0=iLow(Symbol(),Period(),i-2);
double curLow1=iLow(Symbol(),Period(),i+1);
double curLow2=iLow(Symbol(),Period(),i);
double curLow3=iLow(Symbol(),Period(),i-1);
double curLow4=iLow(Symbol(),Period(),i-2);
double curHigh0=iHigh(Symbol(),Period(),i+2);
double curHigh1=iHigh(Symbol(),Period(),i+1);
double curHigh2=iHigh(Symbol(),Period(),i);
double curHigh3=iHigh(Symbol(),Period(),i-1);
double curHigh4=iHigh(Symbol(),Period(),i-2);
if(curLow2<=curLow1 && curLow2<=curLow1 && curLow2<=curLow0 )
{
if(lowest>curLow2){
lowest=curLow2;
T2=iTime(Symbol(),Period(),i);}
}
if(curHigh2>=curHigh1 && curHigh2>=curHigh3&& curHigh2>=curHigh4)
{
if(highest<curHigh2){
highest=curHigh2;
T1=iTime(Symbol(),Period(),i);}
}
}
Comment(highest, lowest);
if(T1<T2)
{ObjectCreate("Fibo", OBJ_FIBO, 0, T1, highest,T2,lowest);}
else{
ObjectCreate("Fibo", OBJ_FIBO, 0, T2, lowest, T1,highest);
}
//----
string fiboobjname = "Fibo";
ObjectSet(fiboobjname, OBJPROP_FIBOLEVELS, 11);
ObjectSet(fiboobjname, OBJPROP_FIRSTLEVEL, 0.0);
ObjectSetFiboDescription(fiboobjname,0,"Low %$");
ObjectSet(fiboobjname, OBJPROP_FIRSTLEVEL+1, 0.236);
ObjectSetFiboDescription(fiboobjname,1,"23.6 %$");
ObjectSet(fiboobjname, OBJPROP_FIRSTLEVEL+2, 0.382);
ObjectSetFiboDescription(fiboobjname,2,"38.2 %$");
ObjectSet(fiboobjname, OBJPROP_FIRSTLEVEL+3, 0.50);
ObjectSetFiboDescription(fiboobjname,3,"50.0 %$");
ObjectSet(fiboobjname, OBJPROP_FIRSTLEVEL+4, 0.618);
ObjectSetFiboDescription(fiboobjname,4,"61.8 %$");
ObjectSet(fiboobjname, OBJPROP_FIRSTLEVEL+5, 0.764);
ObjectSetFiboDescription(fiboobjname,5,"76.4 %$");
ObjectSet(fiboobjname, OBJPROP_FIRSTLEVEL+6, 1.000);
ObjectSetFiboDescription(fiboobjname,6,"High %$");
ObjectSet(fiboobjname, OBJPROP_FIRSTLEVEL+7, -0.236);
ObjectSetFiboDescription(fiboobjname,7,"123.6 %$");
ObjectSet(fiboobjname, OBJPROP_FIRSTLEVEL+8, -0.382);
ObjectSetFiboDescription(fiboobjname,8,"138.2 %$");
ObjectSet(fiboobjname, OBJPROP_FIRSTLEVEL+9, -0.50);
ObjectSetFiboDescription(fiboobjname,9,"150.0 %$");
ObjectSet(fiboobjname, OBJPROP_FIRSTLEVEL+10, -0.618);
ObjectSetFiboDescription(fiboobjname,10,"161.8 %$");
ObjectSet(fiboobjname, OBJPROP_FIRSTLEVEL+11, 2.000);
ObjectSetFiboDescription(fiboobjname,11,"200.0 %$");
ObjectSet(fiboobjname, OBJPROP_FIRSTLEVEL+12, 2.618);
ObjectSetFiboDescription(fiboobjname,12,"261.8 %$");
ObjectSet( "Fibo", OBJPROP_LEVELCOLOR, FibColor) ;
ObjectsRedraw();
return(0);
}
//+------------------------------------------------------------------+
Comments
Markdown Formatting Guide
# H1
## H2
### H3
**bold text**
*italicized text*
[title](https://www.example.com)

`code`
```
code block
```
> blockquote
- Item 1
- Item 2
1. First item
2. Second item
---