DiNapoli&Fibo





//+------------------------------------------------------------------+
//|                                         DiNapoli & Fibo          |
//|                                         Copyright © 2005, Rob    |
//|                                                                  |
//+------------------------------------------------------------------+
#property copyright "Rob"
#property link      "http://www.viac.ru/"

#property indicator_chart_window
#property indicator_buffers 0
//---- input parameters

extern double PointA=0;
extern double PointB=0;
extern double PointC=0;
extern double PointF=0;
extern double PointF1_blue=0;
extern double PointF2_pink=0;
extern double PointF3_brown=0;
extern double PointF4_silver=0;

double COP=0,OP=0,XOP=0;
double Start=0,Stop=0,f1g=0,F1R=0,f2g=0,F2R=0,f3g=0,F3R=0,f4g=0,F4R=0;


int  shift = 0,counted_bars=0;
     
        
        
//+------------------------------------------------------------------+
//| Custom indicator initialization function                         |
//+------------------------------------------------------------------+
int init()
  {


   return(0);
  }
//+------------------------------------------------------------------+
//| Custor indicator deinitialization function                       |
//+------------------------------------------------------------------+
int deinit()
  {
//---- TODO: add your code here

ObjectDelete("COP Label"); 
ObjectDelete("COP Line");
ObjectDelete("OP Label"); 
ObjectDelete("OP Line");
ObjectDelete("XOP Label");
ObjectDelete("XOP Line");

ObjectDelete("Start Label");
ObjectDelete("Start Line");
ObjectDelete("Stop Label");
ObjectDelete("Stop Line");

ObjectDelete("f1g Label");
ObjectDelete("f1g Line");
ObjectDelete("F1R Label");
ObjectDelete("F1R Line");
ObjectDelete("f2g Label");
ObjectDelete("f2g Line");
ObjectDelete("F2R Label");
ObjectDelete("F2R Line");
ObjectDelete("f3g Label");
ObjectDelete("f3g Line");
ObjectDelete("F3R Label");
ObjectDelete("F3R Line");
ObjectDelete("f4g Label");
ObjectDelete("f4g Line");
ObjectDelete("F4R Label");
ObjectDelete("F4R Line");

//----
   return(0);
  }
//+------------------------------------------------------------------+
//| Custom indicator iteration function                              |
//+------------------------------------------------------------------+
 int start()
  {
int    counted_bars=IndicatorCounted(),CountBars;
if (CountBars>=Bars) CountBars=Bars;
  //SetIndexDrawBegin(0,Bars-CountBars);
  //SetIndexDrawBegin(1,Bars-CountBars);
for (shift=1;shift<=0;shift--) {
}

//---- Calculate Lines

COP = (PointB-PointA)*0.618+PointC;
OP = PointB-PointA+PointC;
XOP = (PointB-PointA)*1.618+PointC;

f1g = PointF-(PointF-PointF1_blue)*0.382;
F1R = PointF-(PointF-PointF1_blue)*0.618;
f2g = PointF-(PointF-PointF2_pink)*0.382;
F2R = PointF-(PointF-PointF2_pink)*0.618;
f3g = PointF-(PointF-PointF3_brown)*0.382;
F3R = PointF-(PointF-PointF3_brown)*0.618;
f4g = PointF-(PointF-PointF4_silver)*0.382;
F4R = PointF-(PointF-PointF4_silver)*0.618;

//---- Set line labels on chart window
{
  
    if(ObjectFind("COP Label") != 0)
      {
      ObjectCreate("COP Label", OBJ_TEXT, 0, Time[40], COP);
      ObjectSetText("COP Label", "COP", 11, "Arial", Yellow);
      }
      else
      {
      ObjectMove("COP Label", 0, Time[40], COP);
      }

    if(ObjectFind("OP Label") != 0)
      {
      ObjectCreate("OP Label", OBJ_TEXT, 0, Time[40], OP);
      ObjectSetText("OP Label", " OP", 11, "Arial", Yellow);
      }
      else
      {
      ObjectMove("OP Label", 0, Time[40], OP);
      }

    if(ObjectFind("XOP Label") != 0)
      {
      ObjectCreate("XOP Label", OBJ_TEXT, 0, Time[40], XOP);
      ObjectSetText("XOP Label", "XOP", 11, "Arial", Gold);
      }
      else
      {
      ObjectMove("XOP Label", 0, Time[40], XOP);
      }

//-------------------------------------------------------------------      
    if(ObjectFind("f1g Label") != 0)
      {
      ObjectCreate("f1g Label", OBJ_TEXT, 0, Time[45], f1g);
      ObjectSetText("f1g Label", " f1g", 11, "Arial", DodgerBlue);
      }
      else
      {
      ObjectMove("f1g Label", 0, Time[45], f1g);
      }     
      
    if(ObjectFind("F1R Label") != 0)
      {
      ObjectCreate("F1R Label", OBJ_TEXT, 0, Time[45], F1R);
      ObjectSetText("F1R Label", " F1R", 11, "Arial", DodgerBlue);
      }
      else
      {
      ObjectMove("F1R Label", 0, Time[45], F1R);
      }
//---------------------------------------------      
    if(ObjectFind("f2g Label") != 0)
      {
      ObjectCreate("f2g Label", OBJ_TEXT, 0, Time[50], f2g);
      ObjectSetText("f2g Label", " f2g", 11, "Arial", DeepPink);
      }
      else
      {
      ObjectMove("f2g Label", 0, Time[50], f2g);
      }
      
    if(ObjectFind("F2R Label") != 0)
      {
      ObjectCreate("F2R Label", OBJ_TEXT, 0, Time[50], F2R);
      ObjectSetText("F2R Label", " F2R", 11, "Arial", DeepPink);
      }
      else
      {
      ObjectMove("F2R Label", 0, Time[50], F2R);
      }
//------------------------------------------------      
    if(ObjectFind("f3g Label") != 0)
      {
      ObjectCreate("f3g Label", OBJ_TEXT, 0, Time[55], f3g);
      ObjectSetText("f3g Label", " f3g", 11, "Arial", Peru);
      }
      else
      {
      ObjectMove("f3g Label", 0, Time[55], f3g);
      } 
      
    if(ObjectFind("F3R Label") != 0)
      {
      ObjectCreate("F3R Label", OBJ_TEXT, 0, Time[55], F3R);
      ObjectSetText("F3R Label", " F3R", 11, "Arial", Peru);
      }
      else
      {
      ObjectMove("F3R Label", 0, Time[55], F3R);
      }
//----------------------------------------------------------      
    if(ObjectFind("f4g Label") != 0)
      {
      ObjectCreate("f4g Label", OBJ_TEXT, 0, Time[60], f4g);
      ObjectSetText("f4g Label", " f4g", 11, "Arial", Silver);
      }
      else
      {
      ObjectMove("f4g Label", 0, Time[60], f4g);
      }
      
    if(ObjectFind("F4R Label") != 0)
      {
      ObjectCreate("F4R Label", OBJ_TEXT, 0, Time[60], F4R);
      ObjectSetText("F4R Label", " F4R", 11, "Arial", Silver);
      }
      else
      {
      ObjectMove("F4R Label", 0, Time[60], F4R);
      }
      
       
//---  Draw    lines on chart


    if(ObjectFind("COP Line") != 0)
      {
      ObjectCreate("COP Line", OBJ_HLINE, 0, Time[40], COP);
      ObjectSet("COP Line", OBJPROP_STYLE, STYLE_DOT);
      ObjectSet("COP Line", OBJPROP_COLOR, Yellow);
      }
      else
      {
      ObjectMove("COP Line", 0, Time[40], COP);
      }

    if(ObjectFind("OP Line") != 0)
      {
      ObjectCreate("OP Line", OBJ_HLINE, 0, Time[40], OP);
      ObjectSet("OP Line", OBJPROP_STYLE, STYLE_DASH);
      ObjectSet("OP Line", OBJPROP_COLOR, Gold);
      }
      else
      {
      ObjectMove("OP Line", 0, Time[40], OP);
      }
     
     if(ObjectFind("XOP Line") != 0)
      {
      ObjectCreate("XOP Line", OBJ_HLINE, 0, Time[40], XOP);
      ObjectSet("XOP Line", OBJPROP_STYLE, STYLE_DOT);
      ObjectSet("XOP Line", OBJPROP_COLOR, Yellow);
      }
      else
      {
      ObjectMove("XOP Line", 0, Time[40], XOP);
      } 

//----------------------------------------------------------------      
    if(ObjectFind("f1g Line") != 0)
      {
      ObjectCreate("f1g Line", OBJ_HLINE, 0, Time[45], f1g);
      ObjectSet("f1g Line", OBJPROP_STYLE, STYLE_DOT);
      ObjectSet("f1g Line", OBJPROP_COLOR, LawnGreen);
      }
      else
      {
      ObjectMove("f1g Line", 0, Time[45], f1g);
      }      
            
    if(ObjectFind("F1R Line") != 0)
      {
      ObjectCreate("F1R Line", OBJ_HLINE, 0, Time[45], F1R);
      ObjectSet("F1R Line", OBJPROP_STYLE, STYLE_DOT);
      ObjectSet("F1R Line", OBJPROP_COLOR, OrangeRed);
      }
      else
      {
      ObjectMove("F1R Line", 0, Time[45], F1R);
      }
//----------------------------------------------      
    if(ObjectFind("f2g Line") != 0)
      {
      ObjectCreate("f2g Line", OBJ_HLINE, 0, Time[50], f2g);
      ObjectSet("f2g Line", OBJPROP_STYLE, STYLE_DOT);
      ObjectSet("f2g Line", OBJPROP_COLOR, LawnGreen);
      }
      else
      {
      ObjectMove("f2g Line", 0, Time[50], f2g);
      } 
      
    if(ObjectFind("F2R Line") != 0)
      {
      ObjectCreate("F2R Line", OBJ_HLINE, 0, Time[50], F2R);
      ObjectSet("F2R Line", OBJPROP_STYLE, STYLE_DOT);
      ObjectSet("F2R Line", OBJPROP_COLOR, OrangeRed);
      }
      else
      {
      ObjectMove("F2R Line", 0, Time[50], F2R);
      } 
//-------------------------------------------------      
    if(ObjectFind("f3g Line") != 0)
      {
      ObjectCreate("f3g Line", OBJ_HLINE, 0, Time[55], f3g);
      ObjectSet("f3g Line", OBJPROP_STYLE, STYLE_DOT);
      ObjectSet("f3g Line", OBJPROP_COLOR, LawnGreen);
      }
      else
      {
      ObjectMove("f3g Line", 0, Time[55], f3g);
      }
      
    if(ObjectFind("F3R Line") != 0)
      {
      ObjectCreate("F3R Line", OBJ_HLINE, 0, Time[55], F3R);
      ObjectSet("F3R Line", OBJPROP_STYLE, STYLE_DOT);
      ObjectSet("F3R Line", OBJPROP_COLOR, OrangeRed);
      }
      else
      {
      ObjectMove("F3R Line", 0, Time[55], F3R);
      }
//-----------------------------------------------------      
    if(ObjectFind("f4g Line") != 0)
      {
      ObjectCreate("f4g Line", OBJ_HLINE, 0, Time[60], f4g);
      ObjectSet("f4g Line", OBJPROP_STYLE, STYLE_DOT);
      ObjectSet("f4g Line", OBJPROP_COLOR, LawnGreen);
      }
      else
      {
      ObjectMove("f4g Line", 0, Time[60], f4g);
      }
      
    if(ObjectFind("F4R Line") != 0)
      {
      ObjectCreate("F4R Line", OBJ_HLINE, 0, Time[60], F4R);
      ObjectSet("F4R Line", OBJPROP_STYLE, STYLE_DOT);
      ObjectSet("F4R Line", OBJPROP_COLOR, OrangeRed);
      }
      else
      {
      ObjectMove("F4R Line", 0, Time[60], F4R);
      }
//------------------------------------------------------     
   
} 
//---- End of  Lines Draw 
//---- End Of Program
   return(0);
}
//+------------------------------------------------------------------+



Sample





Analysis



Market Information Used:

Series array that contains open time of each bar


Indicator Curves created:


Indicators Used:



Custom Indicators Used:

Order Management characteristics:

Other Features: