JS-FIBOFAN_V2

Author: js_sergey@list.ru
0 Views
0 Downloads
0 Favorites
JS-FIBOFAN_V2
//+--------------------------------------------------------------------------------------------+
//|HHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHH|
//+--------------------------------------------------------------------------------------------+
//|\           \                             JS-FIBOFAN.V2.mq4                      /           / |
//| )----)------)---------------------------------------------------------------(------(----(  |
//|/           /     Ïèøó òîðãîâûå ñèñòåìû  js_sergey@list.ru  Ñåðãåé  © 2009    \           \ |
//+--------------------------------------------------------------------------------------------+
//|HHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHH|
//+--------------------------------------------------------------------------------------------+

#property copyright " js_sergey@list.ru "
#property link      " http://multiexperts.ru/ "

#property indicator_chart_window
extern int   ExtDepth      = 24;
extern int   ExtDeviation  = 12;
extern int   ExtBackstep   = 8;
//---
extern string _______      = "ñìåùåíèå ïî çèãçàãó";
extern int    zz           = 1;
//---
extern bool  fibofan       = true; //ôèáî-âååð
extern bool  fibour        = false;//ðèñîâàòü ôèáî-óðîâíè
extern bool  ëó÷           = false;//ðèñîâàòü ëó÷
extern bool  fon           = false;//ðèñîâàòü ëèíèè êàê ôîí
//---
extern int   Ñòèëü_f0_0    = 0;
extern int   øèð_f0_0      = 1;
extern color öâåò_f0_0     = DarkSeaGreen;
//---
extern int   Ñòèëü_f23     = 0;
extern int   øèð_f23       = 1;
extern color öâåò_f23      = DarkSeaGreen;
//---
extern int   Ñòèëü_f38     = 0;
extern int   øèð_f38       = 1;
extern color öâåò_f38      = DarkSeaGreen;
//---
extern int   Ñòèëü_f50     = 0;
extern int   øèð_f50       = 1;
extern color öâåò_f50      = Red;
//---
extern int   Ñòèëü_f61     = 0;
extern int   øèð_f61       = 1;
extern color öâåò_f61      = DarkSeaGreen;
//---
extern int   Ñòèëü_f76     = 0;
extern int   øèð_f76       = 1;
extern color öâåò_f76      = DarkSeaGreen;
//---
extern int   Ñòèëü_f100    = 0;
extern int   øèð_f100      = 1;
extern color öâåò_f100     = DarkSeaGreen;
//---
extern int   Ñòèëü_f138    = 0;
extern int   øèð_f138      = 1;
extern color öâåò_f138     = DarkSeaGreen;
//---
extern int   Ñòèëü_f161    = 0;
extern int   øèð_f161      = 1;
extern color öâåò_f161     = Red;
//---
extern int   Ñòèëü_f261    = 0;
extern int   øèð_f261      = 1;
extern color öâåò_f261     = Red;
//---
int rg,rd;
double f261, f138, f161, f76, f61, f50, f38, f23, ext1, ext0;
//+------------------------------------------------------------------+
int deinit()
  {
//----
   ObjectDelete("Fibo38");
   ObjectDelete("Fibo50");
   ObjectDelete("Fibo61");
   ObjectDelete("Fib0");
   ObjectDelete("Fib23");
   ObjectDelete("Fib38");
   ObjectDelete("Fib50");
   ObjectDelete("Fib61");
   ObjectDelete("Fib76");
   ObjectDelete("Fib1");
   ObjectDelete("Fib138");
   ObjectDelete("Fib161");
   ObjectDelete("Fib261");
   ObjectDelete("F38");
   ObjectDelete("F50");
   ObjectDelete("F61");
   ObjectDelete("FF0");
   ObjectDelete("FF23");
   ObjectDelete("FF38");
   ObjectDelete("FF50");
   ObjectDelete("FF61");
   ObjectDelete("FF76");
   ObjectDelete("FF1");
   ObjectDelete("FF138");
   ObjectDelete("FF161");
   ObjectDelete("FF261");
//----
   return(0);
  }
//+------------------------------------------------------------------+ 
int start()
  {
//----
   int zg=zz+1;
   rg=GetExtremumZZBar(zz);
   rd=GetExtremumZZBar(zg); 
//---- 
   ext0=GetExtremumZZPrice(zz);
   ext1=GetExtremumZZPrice(zg);
//----
   f23=ext0-((ext0-ext1)*0.236);
   f38=ext0-((ext0-ext1)*0.382); 
   f50=ext0-((ext0-ext1)*0.500);
   f61=ext0-((ext0-ext1)*0.618);
   f76=ext0-((ext0-ext1)*0.764);
   f138=ext0-((ext0-ext1)*1.382);
   f161=ext0-((ext0-ext1)*1.618);
   f261=ext0-((ext0-ext1)*2.618);
//----  
  if(fibofan==true){
//----
   ObjectDelete("Fibo38");
   ObjectCreate("Fibo38", OBJ_TREND, 0, Time[rd], ext1, Time[rg], f38);
   ObjectSet("Fibo38", OBJPROP_STYLE, Ñòèëü_f38);
   ObjectSet("Fibo38", OBJPROP_WIDTH, øèð_f38); 
   ObjectSet("Fibo38", OBJPROP_COLOR, öâåò_f38);
   ObjectSet("Fibo38", OBJPROP_BACK,  fon);
//----    
   ObjectDelete("Fibo50");
   ObjectCreate("Fibo50", OBJ_TREND, 0, Time[rd], ext1, Time[rg], f50);
   ObjectSet("Fibo50", OBJPROP_STYLE, Ñòèëü_f50);
   ObjectSet("Fibo50", OBJPROP_WIDTH, øèð_f50); 
   ObjectSet("Fibo50", OBJPROP_COLOR, öâåò_f50);
   ObjectSet("Fibo50", OBJPROP_BACK,  fon);
//----
   ObjectDelete("Fibo61");
   ObjectCreate("Fibo61", OBJ_TREND, 0, Time[rd], ext1, Time[rg], f61);
   ObjectSet("Fibo61", OBJPROP_STYLE, Ñòèëü_f61);
   ObjectSet("Fibo61", OBJPROP_WIDTH, øèð_f61); 
   ObjectSet("Fibo61", OBJPROP_COLOR, öâåò_f61);
   ObjectSet("Fibo61", OBJPROP_BACK,  fon);
//----
   double CP=1*Point;
   ObjectDelete("F61");
   ObjectCreate("F61",OBJ_TEXT,0,Time[rg],f61-CP);
   ObjectSetText("F61","F61.8",8,"Arial",öâåò_f61);
//----  
   ObjectDelete("F50");
   ObjectCreate("F50",OBJ_TEXT,0,Time[rg],f50-CP);
   ObjectSetText("F50","F50.0",8,"Arial",öâåò_f50);
//----  
   ObjectDelete("F38");
   ObjectCreate("F38",OBJ_TEXT,0,Time[rg],f38-CP);
   ObjectSetText("F38","F38.2",8,"Arial",öâåò_f38);
//----
   }
//----   
   if(fibour==true){
   datetime CT=Time[0]+Period()*60*(WindowBarsPerChart()/5);
   datetime ST=Time[0]+Period()*60*(WindowBarsPerChart()/7);
//----
   ObjectDelete("FF261");
   ObjectCreate("FF261",OBJ_TEXT,0,ST,f261-CP);
   ObjectSetText("FF261","FF261",8,"Arial",öâåò_f261);  
//----
   ObjectDelete("FF161");
   ObjectCreate("FF161",OBJ_TEXT,0,ST,f161-CP);
   ObjectSetText("FF161","FF161",8,"Arial",öâåò_f161);    
//----
   ObjectDelete("FF138");
   ObjectCreate("FF138",OBJ_TEXT,0,ST,f138-CP);
   ObjectSetText("FF138","FF138",8,"Arial",öâåò_f138);   
//----
   ObjectDelete("FF1");
   ObjectCreate("FF1",OBJ_TEXT,0,ST,ext1-CP);
   ObjectSetText("FF1","FF100",8,"Arial",öâåò_f100);
//----
   ObjectDelete("FF76");
   ObjectCreate("FF76",OBJ_TEXT,0,ST,f76-CP);
   ObjectSetText("FF76","FF76.4",8,"Arial",öâåò_f76);
//----
   ObjectDelete("FF61");
   ObjectCreate("FF61",OBJ_TEXT,0,ST,f61-CP);
   ObjectSetText("FF61","FF61.8",8,"Arial",öâåò_f61);
//----  
   ObjectDelete("FF50");
   ObjectCreate("FF50",OBJ_TEXT,0,ST,f50-CP);
   ObjectSetText("FF50","FF50.0",8,"Arial",öâåò_f50);
//----  
   ObjectDelete("FF38");
   ObjectCreate("FF38",OBJ_TEXT,0,ST,f38-CP);
   ObjectSetText("FF38","FF38.2",8,"Arial",öâåò_f38);
//----
   ObjectDelete("FF23");
   ObjectCreate("FF23",OBJ_TEXT,0,ST,f23-CP);
   ObjectSetText("FF23","FF23.6",8,"Arial",öâåò_f23);
//----
   ObjectDelete("FF0");
   ObjectCreate("FF0",OBJ_TEXT,0,ST,ext0-CP);
   ObjectSetText("FF0","FF0.0",8,"Arial",öâåò_f0_0);
//----
   ObjectDelete("Fib0");
   ObjectCreate("Fib0", OBJ_TREND, 0, Time[rd], ext0, CT, ext0);
   ObjectSet("Fib0", OBJPROP_STYLE, Ñòèëü_f0_0);
   ObjectSet("Fib0", OBJPROP_WIDTH, øèð_f0_0); 
   ObjectSet("Fib0", OBJPROP_COLOR, öâåò_f0_0);
   ObjectSet("Fib0", OBJPROP_BACK,  fon);
   ObjectSet("Fib0", OBJPROP_RAY,   ëó÷); // Ëó÷
//----  
   ObjectDelete("Fib23");
   ObjectCreate("Fib23", OBJ_TREND, 0, Time[rd], f23, CT, f23);
   ObjectSet("Fib23", OBJPROP_STYLE, Ñòèëü_f23);
   ObjectSet("Fib23", OBJPROP_WIDTH, øèð_f23); 
   ObjectSet("Fib23", OBJPROP_COLOR, öâåò_f23);
   ObjectSet("Fib23", OBJPROP_BACK,  fon);
   ObjectSet("Fib23", OBJPROP_RAY,   ëó÷); // Ëó÷
//----  
   ObjectDelete("Fib38");
   ObjectCreate("Fib38", OBJ_TREND, 0, Time[rd], f38, CT, f38);
   ObjectSet("Fib38", OBJPROP_STYLE, Ñòèëü_f38);
   ObjectSet("Fib38", OBJPROP_WIDTH, øèð_f38); 
   ObjectSet("Fib38", OBJPROP_COLOR, öâåò_f38);
   ObjectSet("Fib38", OBJPROP_BACK,  fon);
   ObjectSet("Fib38", OBJPROP_RAY,   ëó÷); // Ëó÷
//----   
   ObjectDelete("Fib50");
   ObjectCreate("Fib50", OBJ_TREND, 0, Time[rd], f50, CT, f50);
   ObjectSet("Fib50", OBJPROP_STYLE, Ñòèëü_f50);
   ObjectSet("Fib50", OBJPROP_WIDTH, øèð_f50); 
   ObjectSet("Fib50", OBJPROP_COLOR, öâåò_f50);
   ObjectSet("Fib50", OBJPROP_BACK,  fon);
   ObjectSet("Fib50", OBJPROP_RAY,   ëó÷); // Ëó÷
//----   
   ObjectDelete("Fib61");
   ObjectCreate("Fib61", OBJ_TREND, 0, Time[rd], f61, CT, f61);
   ObjectSet("Fib61", OBJPROP_STYLE, Ñòèëü_f61);
   ObjectSet("Fib61", OBJPROP_WIDTH, øèð_f61); 
   ObjectSet("Fib61", OBJPROP_COLOR, öâåò_f61);
   ObjectSet("Fib61", OBJPROP_BACK,  fon);
   ObjectSet("Fib61", OBJPROP_RAY,   ëó÷); // Ëó÷
//----   
   ObjectDelete("Fib76");
   ObjectCreate("Fib76", OBJ_TREND, 0, Time[rd], f76, CT, f76);
   ObjectSet("Fib76", OBJPROP_STYLE, Ñòèëü_f76);
   ObjectSet("Fib76", OBJPROP_WIDTH, øèð_f76); 
   ObjectSet("Fib76", OBJPROP_COLOR, öâåò_f76);
   ObjectSet("Fib76", OBJPROP_BACK,  fon);
   ObjectSet("Fib76", OBJPROP_RAY,   ëó÷); // Ëó÷
//----  
   ObjectDelete("Fib1");
   ObjectCreate("Fib1", OBJ_TREND, 0, Time[rd], ext1, CT, ext1);
   ObjectSet("Fib1", OBJPROP_STYLE, Ñòèëü_f100);
   ObjectSet("Fib1", OBJPROP_WIDTH, øèð_f100); 
   ObjectSet("Fib1", OBJPROP_COLOR, öâåò_f100);
   ObjectSet("Fib1", OBJPROP_BACK,  fon);
   ObjectSet("Fib1", OBJPROP_RAY,   ëó÷); // Ëó÷
//----   
   ObjectDelete("Fib138");
   ObjectCreate("Fib138", OBJ_TREND, 0, Time[rd], f138, CT, f138);
   ObjectSet("Fib138", OBJPROP_STYLE, Ñòèëü_f138);
   ObjectSet("Fib138", OBJPROP_WIDTH, øèð_f138); 
   ObjectSet("Fib138", OBJPROP_COLOR, öâåò_f138);
   ObjectSet("Fib138", OBJPROP_BACK,  fon);
   ObjectSet("Fib138", OBJPROP_RAY,   ëó÷); // Ëó÷
//----   
   ObjectDelete("Fib161");
   ObjectCreate("Fib161", OBJ_TREND, 0, Time[rd], f161, CT, f161);
   ObjectSet("Fib161", OBJPROP_STYLE, Ñòèëü_f161);
   ObjectSet("Fib161", OBJPROP_WIDTH, øèð_f161); 
   ObjectSet("Fib161", OBJPROP_COLOR, öâåò_f161);
   ObjectSet("Fib161", OBJPROP_BACK,  fon);
   ObjectSet("Fib161", OBJPROP_RAY,   ëó÷); // Ëó÷
//---- 
   ObjectDelete("Fib261");
   ObjectCreate("Fib261", OBJ_TREND, 0, Time[rd], f261, CT, f261);
   ObjectSet("Fib261", OBJPROP_STYLE, Ñòèëü_f261);
   ObjectSet("Fib261", OBJPROP_WIDTH, øèð_f261); 
   ObjectSet("Fib261", OBJPROP_COLOR, öâåò_f261);
   ObjectSet("Fib261", OBJPROP_BACK,  fon);
   ObjectSet("Fib261", OBJPROP_RAY,   ëó÷); // Ëó÷
   } 

   return(0);
  }
//+------------------------------------------------------------------+
int GetExtremumZZBar(int ne) {
  double _zz;
  int i, k=iBars(Symbol(), 0), ke=0;
  for (i=0; i<k; i++) {
    _zz=iCustom(Symbol(), 0, "ZigZag", ExtDepth, ExtDeviation, ExtBackstep, 0, i);
    if (_zz!=0) {
      ke++;
      if (ke>ne) return(i);
    }
  }
  return(-1);
}
//+------------------------------------------------------------------+
double GetExtremumZZPrice(int ne) {
  double _zz;
  int    i, k=iBars(Symbol(), 0), ke=0;
  for (i=0; i<k; i++) {
    _zz=iCustom(Symbol(), 0, "ZigZag", ExtDepth, ExtDeviation, ExtBackstep, 0, i);
    if (_zz!=0) {
      ke++;
      if (ke>ne) return(_zz);
    }
  }
  return(0);
}
//+------------------------------------------------------------------+

Comments

Markdown supported. Formatting help

Markdown Formatting Guide

Element Markdown Syntax
Heading # H1
## H2
### H3
Bold **bold text**
Italic *italicized text*
Link [title](https://www.example.com)
Image ![alt text](image.jpg)
Code `code`
Code Block ```
code block
```
Quote > blockquote
Unordered List - Item 1
- Item 2
Ordered List 1. First item
2. Second item
Horizontal Rule ---