Trend-Table-1v1

Author: Antonuk Oleg
Trend-Table-1v1
Indicators Used
Moving average indicatorLarry William percent range indicatorParabolic Stop and Reverse system
2 Views
0 Downloads
0 Favorites
Trend-Table-1v1
//+------------------------------------------------------------------+
//|                                                  signalTable.mq4 |
//|                                                     Antonuk Oleg |
//|                                            antonukoleg@gmail.com |
//+------------------------------------------------------------------+
#property copyright "Antonuk Oleg"
#property link      "antonukoleg@gmail.com"
//----
#property indicator_chart_window
extern int scaleX=22,
           scaleY=20,
           offsetX=35,
           offsetY=20,
           fontSize=20,
           corner=2,
           symbolCodeBuy=67,
           symbolCodeSell=68,
           symbolCodeNoSignal=73;
extern color signalBuyColor=Gold,
             signalSellColor=MediumPurple,
             noSignalColor=WhiteSmoke,
             textColor=Gold;
int period[]={1,5,15,30,60,240,1440,10080,43200};
string periodString[]={"M1","M5","M15","M30"," H1","H4","D1","W1","MN1"},
       // ñîçäàåì åùå îäèí ìàññèâ ñ íàçâàíèÿìè èíäèêàòîðîâ
       signalNameString[]={"MA","WPR","SAR"};
//+------------------------------------------------------------------+
//|                                                                  |
//+------------------------------------------------------------------+
int init()
  {
   // òàáëèöà ñèãíàëîâ
   for(int x=0;x<9;x++)
      for(int y=0;y<3;y++)
        {
         ObjectCreate("signaltrend"+x+y,OBJ_LABEL,0,0,0,0,0);
         // èçìåíÿåì óãîë ïðèâÿçêè
         ObjectSet("signaltrend"+x+y,OBJPROP_CORNER,corner);
         ObjectSet("signaltrend"+x+y,OBJPROP_XDISTANCE,x*scaleX+offsetX);
         ObjectSet("signaltrend"+x+y,OBJPROP_YDISTANCE,y*scaleY+20);
         ObjectSetText("signaltrend"+x+y,CharToStr(symbolCodeNoSignal),
                       fontSize,"Wingdings",noSignalColor);
        }
   // íàçâàíèÿ òàéìôðåéìîâ    
   for(x=0;x<9;x++)
     {
      ObjectCreate("textPeriodtrend"+x,OBJ_LABEL,0,0,0,0,0);
      // èçìåíÿåì óãîë ïðèâÿçêè      
      ObjectSet("textPeriodtrend"+x,OBJPROP_CORNER,corner);
      ObjectSet("textPeriodtrend"+x,OBJPROP_XDISTANCE,x*scaleX+offsetX);
      ObjectSet("textPeriodtrend"+x,OBJPROP_YDISTANCE,offsetY-10);
      ObjectSetText("textPeriodtrend"+x,periodString[x],8,"Tahoma",textColor);
     }
   // íàçâàíèÿ èíäèêàòîðîâ 
   for(y=0;y<3;y++)
     {
      ObjectCreate("textSignaltrend"+y,OBJ_LABEL,0,0,0,0,0);
      // èçìåíÿåì óãîë ïðèâÿçêè      
      ObjectSet("textSignaltrend"+y,OBJPROP_CORNER,corner);
      ObjectSet("textSignaltrend"+y,OBJPROP_XDISTANCE,offsetX-25);
      ObjectSet("textSignaltrend"+y,OBJPROP_YDISTANCE,y*(scaleY)+offsetY+8);
      ObjectSetText("textSignaltrend"+y,signalNameString[y],8,"Tahoma",textColor);
     }
   return(0);
  }
//+------------------------------------------------------------------+
//|                                                                  |
//+------------------------------------------------------------------+
int start()
  {
   for(int x=0;x<9;x++)
     {
      // ñèãíàë íà ïîêóïêó
      if(iMA(Symbol(),period[x],13,0,0,0,0)>iMA(Symbol(),period[x],24,0,0,0,0))
         ObjectSetText("signaltrend"+x+"0",CharToStr(symbolCodeBuy),fontSize,"Wingdings",signalBuyColor);
      // ñèãíàë íà ïðîäàæó   
      else
         ObjectSetText("signaltrend"+x+"0",CharToStr(symbolCodeSell),fontSize,"Wingdings",signalSellColor);
     }
   for(x=0;x<9;x++)
     {
      // ñèãíàë íà ïîêóïêó
      if(MathAbs(iWPR(Symbol(),period[x],13,0))<20.0)
         ObjectSetText("signaltrend"+x+"1",CharToStr(symbolCodeBuy),fontSize,"Wingdings",signalBuyColor);
      // ñèãíàë íà ïðîäàæó   
      else if(MathAbs(iWPR(Symbol(),period[x],13,0))>80.0)
            ObjectSetText("signaltrend"+x+"1",CharToStr(symbolCodeSell),fontSize,"Wingdings",signalSellColor);
      // íåò ñèãíàëà
         else
            ObjectSetText("signaltrend"+x+"1",CharToStr(symbolCodeNoSignal),fontSize,"Wingdings",noSignalColor);
     }
   for(x=0;x<9;x++)
     {
      // ñèãíàë íà ïîêóïêó
      if(iSAR(Symbol(),period[x],0.02,0.2,0)<Close[0])
         ObjectSetText("signaltrend"+x+"2",CharToStr(symbolCodeBuy),fontSize,"Wingdings",signalBuyColor);
      // ñèãíàë íà ïðîäàæó   
      else
         ObjectSetText("signaltrend"+x+"2",CharToStr(symbolCodeSell),fontSize,"Wingdings",signalSellColor);
     }
   return(0);
  }
//+------------------------------------------------------------------+
//|                                                                  |
//+------------------------------------------------------------------+
int deinit()
  {
   // ïðè óäàëåíèè íàøåãî èíäèêàòîðà íóæíî óäàëèòü âñå îáúåêòû,
   // êîòîðûå ìû óæå ñîçäàëè
  // ObjectsDeleteAll();
   
     for(int x=0;x<9;x++)
      for(int y=0;y<9;y++)
      {

 //  ObjectsDeleteAll();
 ObjectDelete("signaltrend"+x+y);
 ObjectDelete("textPeriodtrend"+x);
 ObjectDelete("textSignaltrend"+y);
 ObjectDelete("signaltrend"+x+"0");
 ObjectDelete("signaltrend"+x+"1");
 ObjectDelete("signaltrend"+x+"2");
 }
   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 ---