Author: Copyright � 2008, MetaQuotes Software Corp.
Miscellaneous
Uses files from the file systemIt reads information from a fileIt writes information to file
0 Views
0 Downloads
0 Favorites
ExamplePNN
//+------------------------------------------------------------------+
//|                                     Ïðèìåð èñïîëüçîâàíèÿ PNN.mq4 |
//|                      Copyright © 2008, MetaQuotes Software Corp. |
//|                                        http://www.metaquotes.net |
//+------------------------------------------------------------------+
#property copyright "Copyright © 2008, MetaQuotes Software Corp."
#property link      "http://www.metaquotes.net"

//ææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææ
#import "#PNN_ARTIFICAL.ex4"
double PNN(double sigma, double test_example[], double Examples[][]);
int ADD_EXAMPLE(double test_example[],double & Examples[][]);
int PNN_Read_Class(string fname,double & Class_Example[][],int Nk);
int PNN_Write_Class(string fname,double Class_Example[][]);
#import

#import "#_LIB_INDIKATOR.ex4"
bool  SHI_CANAL(string symbol,int timeframe, double & DataIndikator[], bool visible);
int AC_STOH(string symbol, int timeframe,double & Signals[]);
int GetOsMA(string symbol, int timeframe,double & Signals[]);
int GetMACD(string symbol, int timeframe,double & Signals[]);
double ARTSign();
int MA_SIGNAL(string symbol,int timeframe,double & Signal[]);
#import

#import "#_Lib_Torgovla.ex4"
int CalculateCurrentOrders(string symbol,int TupeOrders);
void CheckForOpen(bool Buy,bool Sell,double sl,double  tp,double lot);
void CheckForClose(bool CloseBuy,bool CloseSell);
int close_all_orders();
void  Tral();
#import
//ææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææ
//ææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææ
//extern 
double TP =  0;                                  // ÒýéêÏðîôèò îðäåðà
//extern 
double SL =  30;                                  // ÑòîïËîññ îðäåðà
extern double Prots= 0.1;                                  // Ïðîöåíò îò ñâîáîäíûõ ñðåäñòâ
extern double TresholdBuy = 0.9;
extern double TresholdSell = 0.9;
//============================================================================================
int         MAX_ORDER = 1;
double      VAR_Lot;
static int  VAR_prevtime=0;                              //Ïåðåìåííàÿ äëÿ êîíòðîëÿ áàðîâ
double      balance;                                     //Õðàíèò áàëàíñ ïîñëå îòêðûòèÿ çäåëêè
//Çäåñòü õðàíèì Ñèãíàëû íà îòêðûòèå ñäåëîê ïîëó÷åííûå ñ èíäèêàòîðîâ
int      VAR_AC_STOH=0;
int      VAR_OsMA = 0;
int      VAR_MACD = 0;
int      VAR_MA_SIGNAL = 0;
//ææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææ

#define MAX_INPUT 18
double  SIGMA = 0.9;
double InSignal[MAX_INPUT];
//============================================================================================
int Number_Exempls_Buy;//×èñëî ïðèìåðîâ äëÿ Buy
double Class_Example_Buy[][MAX_INPUT];
double NetOutBuy=0;
//============================================================================================
int Number_Exempls_Sell;//×èñëî ïðèìåðîâ äëÿ Sell
double Class_Example_Sell[][MAX_INPUT];
double NetOutSell=0;

double test_example[MAX_INPUT];
int  TypeOpenPositions = 0;
double OUT;
//+------------------------------------------------------------------+
//| expert initialization function                                   |
//+------------------------------------------------------------------+
int init()
  {
//----
   
   int handle;
   int VAR_Sempls[3]; 
   // ñ÷èòûâàåì ÷èñëî ïðèìåðîâ ïî êëàññàì
   handle=FileOpen("Num_Exempls.inf",FILE_BIN|FILE_READ);
   if(handle>0)
    {
      FileReadArray(handle, VAR_Sempls, 0, 3);
      FileClose(handle);
    }        
   Number_Exempls_Buy = VAR_Sempls[0]; //Çàïîìèíàåì â ïåðåìåííûå
   Number_Exempls_Sell = VAR_Sempls[1];//Çàïîìèíàåì â ïåðåìåííûå
   
   PNN_Read_Class("Num_Exempls_Byu",Class_Example_Buy,Number_Exempls_Buy);
   PNN_Read_Class("Num_Exempls_Sell",Class_Example_Sell,Number_Exempls_Sell);
   
   balance = AccountBalance();
   
   
//----
   return(0);
  }
//ææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææ
//+------------------------------------------------------------------+
//| expert deinitialization function                                 |
//+------------------------------------------------------------------+
int deinit()
  {
//----
   
   int handle;
   int VAR_Sempls[3];
   VAR_Sempls[0] = Number_Exempls_Buy;
   VAR_Sempls[1] = Number_Exempls_Sell;
   
   
   //Ñîõðàíÿåì ÷èñëî ïðèìåðîâ â êëàññàõ
   handle=FileOpen("Num_Exempls.inf", FILE_BIN|FILE_WRITE);
   if(handle>0)
   {
      FileWriteArray(handle, VAR_Sempls, 0, 3); // çàïèñü ïîñëåäíèõ 7 ýëåìåíòîâ
      FileClose(handle);
   }
   //Buy
   PNN_Write_Class("Num_Exempls_Byu",Class_Example_Buy);
   //Sell  
   PNN_Write_Class("Num_Exempls_Sell",Class_Example_Sell);
   
//----
   return(0);
  }
//ææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææ
//+------------------------------------------------------------------+
//| expert start function                                            |
//+------------------------------------------------------------------+
int start()
  {
//----
//============================================================================================
//Ðàáîòàåì òîëüêî íà ñôîðìèðîâàâøèõñÿ áàðàõ!
if(ControlBats() == true)
   {     
      VAR_Lot = Lots();    //Ïðîèçâîäèì ðàñ÷åò ëîòà äëÿ òîðãîâëè
         
      
      if(balance+40 < AccountBalance())
      {
         //Ëåíü ïèñàòü áëîêèðîâêó îáó÷åíèÿ èç íàñòðîåê ýêñïåðòà 
         //Ìîæíî îñòàâèòü âêëþ÷åííûìè è äîîáó÷àòü â ïðîöåññå ðàáîòû
         //if(TypeOpenPositions ==  1)Number_Exempls_Buy = ADD_EXAMPLE(test_example,Class_Example_Buy);
         //if(TypeOpenPositions == -1)Number_Exempls_Sell = ADD_EXAMPLE(test_example,Class_Example_Sell);
      }
      balance = AccountBalance();
   
      

      //Ñîáèðàåì äàííûå ñ èíäèêàòîðîâ
      GetSegnalOfIndicator(InSignal);      
      if(Number_Exempls_Buy  > 0)NetOutBuy = PNN(SIGMA, InSignal,Class_Example_Buy);
      if(Number_Exempls_Sell > 0)NetOutSell = PNN(SIGMA, InSignal,Class_Example_Sell);
      

      if(NetOutBuy > 0 && NetOutSell > 0)
      OUT =(NetOutBuy - NetOutSell)/(NetOutBuy + NetOutSell);
      
      
      StartTorgovla();
      
     
      Comment("VAR_AC_STOH: "+DoubleToStr(VAR_AC_STOH,10 ) + "\n" + 
   "VAR_OsMA: " +DoubleToStr(VAR_OsMA,10 )+"\n"+
   "VAR_MACD: " +DoubleToStr(VAR_MACD,10 )+"\n"+
   "VAR_MA_SIGNAL: " +DoubleToStr(VAR_MA_SIGNAL,10 )+"\n"+
   "--------------------------------------------------------"+"\n"+
   "Ðåøåíèå ñåòè äëÿ Buy :"+ DoubleToStr( NetOutBuy,10 )+"\n"+
   "Ðåøåíèå ñåòè äëÿ Sell :"+ DoubleToStr( NetOutSell,10 )+"\n"+
   "×èñëî ïðèìåðîâ äëÿ Buy :"+ DoubleToStr( Number_Exempls_Buy,0 )+"\n"+
   "×èñëî ïðèìåðîâ äëÿ Sell :"+ DoubleToStr( Number_Exempls_Sell,0 )+"\n"+
   "--------------------------------------------------------"+"\n"+
   "Ðåøåíèå ñåòè :"+DoubleToStr( OUT,10 )+"\n"
   );
   }
 //============================================================================================  
 
   Tral();
   
//----
   return(0);
  }
//+------------------------------------------------------------------+

void StartTorgovla()
{
   // â ìîåì âàðèàíòå CalculateCurrentOrders(Symbol(),çäåñü ñòàâèì 1 åñëè õîòèì ÷òîá ïî áàé ñèòàë (-1) ïî ñåëë íå à 0- è òî è äðóãîå)
   if(CalculateCurrentOrders(Symbol(),0) < MAX_ORDER)
      {  
         if(OUT > TresholdBuy)// && NetOutSell < 0.01  )         
         //if(VAR_AC_STOH > 0 || VAR_MA_SIGNAL >0 || VAR_OsMA > 0 || VAR_MACD>0)
         {
         
            //çàïîìíèì ñèãíàë ñ èíäèêàòîðîâ è â ñëó÷àå óñïåõà äîáàâèì â ñåòü êàê ïðèìåð
            GetSegnalOfIndicator(test_example);
            CheckForOpen(true,false,SL,TP,VAR_Lot);
            TypeOpenPositions = 1; // äëÿ ðàñïîçíàâàíèÿ êîãäà çäåëêà çàêðîåòñÿ áàé èëè ñåëë ïðèìåð ìû ñîõðàíèëè
            
         }
       }  
//============================================================================================
         
      if(CalculateCurrentOrders(Symbol(),0) < MAX_ORDER)
      {     
         if(OUT < -TresholdSell)// && NetOutBuy >0.01)         
         //if(VAR_AC_STOH < 0 || VAR_MA_SIGNAL <0 || VAR_OsMA > 0 || VAR_MACD>0)
         {
            //çàïîìíèì ñèãíàë ñ èíäèêàòîðîâ è â ñëó÷àå óñïåõà äîáàâèì â ñåòü êàê ïðèìåð
           
            GetSegnalOfIndicator(test_example);
            CheckForOpen(false,true,SL,TP,VAR_Lot);
            TypeOpenPositions = -1;
            
         }
         
         
      }
      
}
//ææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææ
//ææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææ
//ææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææ
//ææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææ






//ææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææ
//Ñîáèðàåì äàííûå ñ èíäèêàòîðîâ â îäèí ìàññèâ
//ææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææ
void GetSegnalOfIndicator(double & Input[])
{
   double S[5];
   SHI_CANAL(Symbol(),PERIOD_H1, S,false);
   Input[0] = S[0];//âîçâðàùàåì óãîë íàêëîíà
   Input[1] = S[3];//Øèðèíà êàíàëà 
//============================================================================================
   VAR_AC_STOH=AC_STOH(Symbol(),0,S);
   //Input[2] = S[0];
   //Input[3] = S[1];
   //Input[4] = S[2];
//============================================================================================
   VAR_OsMA = GetOsMA(Symbol(),0,S);
   //Input[5] = S[0];
   //Input[6] = S[1];
   //Input[7] = S[2];
//============================================================================================
   VAR_MACD = GetMACD(Symbol(),0,S);
   Input[8] = S[0];
   Input[9] = S[1];
   Input[10] = S[2];
   Input[11] = S[3];
   Input[12] = S[4];
//============================================================================================
   VAR_MA_SIGNAL = MA_SIGNAL(Symbol(),0,S);
   Input[13] = S[0];
   Input[14] = S[1];
   Input[15] = S[2];
   Input[16] = S[3];
   //Input[17] = ARTSign();
}
//ææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææ

//ææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææ
// Âûñ÷èòûâàåì ïðîöåíò îò ñâîáîäíûõ ñðåäñòâ
//ææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææ
double Lots()
   {
   double mLot = NormalizeDouble( AccountEquity()*Prots/100/1000, 1);// Âû÷èñëÿåì êîëè÷. ëîòîâ  
   if (mLot<0.1)mLot = 0.1;                                          // Äëÿ òåñòà íà ïîñòîÿí. ìèíèì. ëîòàõ
   return(mLot);
   }
//ææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææ

//ææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææ
// Êîíòðîëü áâðîâ
//ææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææ
bool ControlBats()
{
   if(iTime(Symbol(),0,0) == VAR_prevtime)  return(false);
   VAR_prevtime = iTime(Symbol(),0,0);
   return (true);
}
//ææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææ//+------------------------------------------------------------------+
//|                                     Ïðèìåð èñïîëüçîâàíèÿ PNN.mq4 |
//|                      Copyright © 2008, MetaQuotes Software Corp. |
//|                                        http://www.metaquotes.net |
//+------------------------------------------------------------------+
#property copyright "Copyright © 2008, MetaQuotes Software Corp."
#property link      "http://www.metaquotes.net"

//ææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææ
#import "#PNN_ARTIFICAL.ex4"
double PNN(double sigma, double test_example[], double Examples[][]);
int ADD_EXAMPLE(double test_example[],double & Examples[][]);
int PNN_Read_Class(string fname,double & Class_Example[][],int Nk);
int PNN_Write_Class(string fname,double Class_Example[][]);
#import

#import "#_LIB_INDIKATOR.ex4"
bool  SHI_CANAL(string symbol,int timeframe, double & DataIndikator[], bool visible);
int AC_STOH(string symbol, int timeframe,double & Signals[]);
int GetOsMA(string symbol, int timeframe,double & Signals[]);
int GetMACD(string symbol, int timeframe,double & Signals[]);
double ARTSign();
int MA_SIGNAL(string symbol,int timeframe,double & Signal[]);
#import

#import "#_Lib_Torgovla.ex4"
int CalculateCurrentOrders(string symbol,int TupeOrders);
void CheckForOpen(bool Buy,bool Sell,double sl,double  tp,double lot);
void CheckForClose(bool CloseBuy,bool CloseSell);
int close_all_orders();
void  Tral();
#import
//ææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææ
//ææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææ
//extern 
double TP =  0;                                  // ÒýéêÏðîôèò îðäåðà
//extern 
double SL =  30;                                  // ÑòîïËîññ îðäåðà
extern double Prots= 0.1;                                  // Ïðîöåíò îò ñâîáîäíûõ ñðåäñòâ
extern double TresholdBuy = 0.9;
extern double TresholdSell = 0.9;
//============================================================================================
int         MAX_ORDER = 1;
double      VAR_Lot;
static int  VAR_prevtime=0;                              //Ïåðåìåííàÿ äëÿ êîíòðîëÿ áàðîâ
double      balance;                                     //Õðàíèò áàëàíñ ïîñëå îòêðûòèÿ çäåëêè
//Çäåñòü õðàíèì Ñèãíàëû íà îòêðûòèå ñäåëîê ïîëó÷åííûå ñ èíäèêàòîðîâ
int      VAR_AC_STOH=0;
int      VAR_OsMA = 0;
int      VAR_MACD = 0;
int      VAR_MA_SIGNAL = 0;
//ææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææ

#define MAX_INPUT 18
double  SIGMA = 0.9;
double InSignal[MAX_INPUT];
//============================================================================================
int Number_Exempls_Buy;//×èñëî ïðèìåðîâ äëÿ Buy
double Class_Example_Buy[][MAX_INPUT];
double NetOutBuy=0;
//============================================================================================
int Number_Exempls_Sell;//×èñëî ïðèìåðîâ äëÿ Sell
double Class_Example_Sell[][MAX_INPUT];
double NetOutSell=0;

double test_example[MAX_INPUT];
int  TypeOpenPositions = 0;
double OUT;
//+------------------------------------------------------------------+
//| expert initialization function                                   |
//+------------------------------------------------------------------+
int init()
  {
//----
   
   int handle;
   int VAR_Sempls[3]; 
   // ñ÷èòûâàåì ÷èñëî ïðèìåðîâ ïî êëàññàì
   handle=FileOpen("Num_Exempls.inf",FILE_BIN|FILE_READ);
   if(handle>0)
    {
      FileReadArray(handle, VAR_Sempls, 0, 3);
      FileClose(handle);
    }        
   Number_Exempls_Buy = VAR_Sempls[0]; //Çàïîìèíàåì â ïåðåìåííûå
   Number_Exempls_Sell = VAR_Sempls[1];//Çàïîìèíàåì â ïåðåìåííûå
   
   PNN_Read_Class("Num_Exempls_Byu",Class_Example_Buy,Number_Exempls_Buy);
   PNN_Read_Class("Num_Exempls_Sell",Class_Example_Sell,Number_Exempls_Sell);
   
   balance = AccountBalance();
   
   
//----
   return(0);
  }
//ææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææ
//+------------------------------------------------------------------+
//| expert deinitialization function                                 |
//+------------------------------------------------------------------+
int deinit()
  {
//----
   
   int handle;
   int VAR_Sempls[3];
   VAR_Sempls[0] = Number_Exempls_Buy;
   VAR_Sempls[1] = Number_Exempls_Sell;
   
   
   //Ñîõðàíÿåì ÷èñëî ïðèìåðîâ â êëàññàõ
   handle=FileOpen("Num_Exempls.inf", FILE_BIN|FILE_WRITE);
   if(handle>0)
   {
      FileWriteArray(handle, VAR_Sempls, 0, 3); // çàïèñü ïîñëåäíèõ 7 ýëåìåíòîâ
      FileClose(handle);
   }
   //Buy
   PNN_Write_Class("Num_Exempls_Byu",Class_Example_Buy);
   //Sell  
   PNN_Write_Class("Num_Exempls_Sell",Class_Example_Sell);
   
//----
   return(0);
  }
//ææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææ
//+------------------------------------------------------------------+
//| expert start function                                            |
//+------------------------------------------------------------------+
int start()
  {
//----
//============================================================================================
//Ðàáîòàåì òîëüêî íà ñôîðìèðîâàâøèõñÿ áàðàõ!
if(ControlBats() == true)
   {     
      VAR_Lot = Lots();    //Ïðîèçâîäèì ðàñ÷åò ëîòà äëÿ òîðãîâëè
         
      
      if(balance+40 < AccountBalance())
      {
         //Ëåíü ïèñàòü áëîêèðîâêó îáó÷åíèÿ èç íàñòðîåê ýêñïåðòà 
         //Ìîæíî îñòàâèòü âêëþ÷åííûìè è äîîáó÷àòü â ïðîöåññå ðàáîòû
         //if(TypeOpenPositions ==  1)Number_Exempls_Buy = ADD_EXAMPLE(test_example,Class_Example_Buy);
         //if(TypeOpenPositions == -1)Number_Exempls_Sell = ADD_EXAMPLE(test_example,Class_Example_Sell);
      }
      balance = AccountBalance();
   
      

      //Ñîáèðàåì äàííûå ñ èíäèêàòîðîâ
      GetSegnalOfIndicator(InSignal);      
      if(Number_Exempls_Buy  > 0)NetOutBuy = PNN(SIGMA, InSignal,Class_Example_Buy);
      if(Number_Exempls_Sell > 0)NetOutSell = PNN(SIGMA, InSignal,Class_Example_Sell);
      

      if(NetOutBuy > 0 && NetOutSell > 0)
      OUT =(NetOutBuy - NetOutSell)/(NetOutBuy + NetOutSell);
      
      
      StartTorgovla();
      
     
      Comment("VAR_AC_STOH: "+DoubleToStr(VAR_AC_STOH,10 ) + "\n" + 
   "VAR_OsMA: " +DoubleToStr(VAR_OsMA,10 )+"\n"+
   "VAR_MACD: " +DoubleToStr(VAR_MACD,10 )+"\n"+
   "VAR_MA_SIGNAL: " +DoubleToStr(VAR_MA_SIGNAL,10 )+"\n"+
   "--------------------------------------------------------"+"\n"+
   "Ðåøåíèå ñåòè äëÿ Buy :"+ DoubleToStr( NetOutBuy,10 )+"\n"+
   "Ðåøåíèå ñåòè äëÿ Sell :"+ DoubleToStr( NetOutSell,10 )+"\n"+
   "×èñëî ïðèìåðîâ äëÿ Buy :"+ DoubleToStr( Number_Exempls_Buy,0 )+"\n"+
   "×èñëî ïðèìåðîâ äëÿ Sell :"+ DoubleToStr( Number_Exempls_Sell,0 )+"\n"+
   "--------------------------------------------------------"+"\n"+
   "Ðåøåíèå ñåòè :"+DoubleToStr( OUT,10 )+"\n"
   );
   }
 //============================================================================================  
 
   Tral();
   
//----
   return(0);
  }
//+------------------------------------------------------------------+

void StartTorgovla()
{
   // â ìîåì âàðèàíòå CalculateCurrentOrders(Symbol(),çäåñü ñòàâèì 1 åñëè õîòèì ÷òîá ïî áàé ñèòàë (-1) ïî ñåëë íå à 0- è òî è äðóãîå)
   if(CalculateCurrentOrders(Symbol(),0) < MAX_ORDER)
      {  
         if(OUT > TresholdBuy)// && NetOutSell < 0.01  )         
         //if(VAR_AC_STOH > 0 || VAR_MA_SIGNAL >0 || VAR_OsMA > 0 || VAR_MACD>0)
         {
         
            //çàïîìíèì ñèãíàë ñ èíäèêàòîðîâ è â ñëó÷àå óñïåõà äîáàâèì â ñåòü êàê ïðèìåð
            GetSegnalOfIndicator(test_example);
            CheckForOpen(true,false,SL,TP,VAR_Lot);
            TypeOpenPositions = 1; // äëÿ ðàñïîçíàâàíèÿ êîãäà çäåëêà çàêðîåòñÿ áàé èëè ñåëë ïðèìåð ìû ñîõðàíèëè
            
         }
       }  
//============================================================================================
         
      if(CalculateCurrentOrders(Symbol(),0) < MAX_ORDER)
      {     
         if(OUT < -TresholdSell)// && NetOutBuy >0.01)         
         //if(VAR_AC_STOH < 0 || VAR_MA_SIGNAL <0 || VAR_OsMA > 0 || VAR_MACD>0)
         {
            //çàïîìíèì ñèãíàë ñ èíäèêàòîðîâ è â ñëó÷àå óñïåõà äîáàâèì â ñåòü êàê ïðèìåð
           
            GetSegnalOfIndicator(test_example);
            CheckForOpen(false,true,SL,TP,VAR_Lot);
            TypeOpenPositions = -1;
            
         }
         
         
      }
      
}
//ææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææ
//ææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææ
//ææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææ
//ææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææ






//ææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææ
//Ñîáèðàåì äàííûå ñ èíäèêàòîðîâ â îäèí ìàññèâ
//ææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææ
void GetSegnalOfIndicator(double & Input[])
{
   double S[5];
   SHI_CANAL(Symbol(),PERIOD_H1, S,false);
   Input[0] = S[0];//âîçâðàùàåì óãîë íàêëîíà
   Input[1] = S[3];//Øèðèíà êàíàëà 
//============================================================================================
   VAR_AC_STOH=AC_STOH(Symbol(),0,S);
   //Input[2] = S[0];
   //Input[3] = S[1];
   //Input[4] = S[2];
//============================================================================================
   VAR_OsMA = GetOsMA(Symbol(),0,S);
   //Input[5] = S[0];
   //Input[6] = S[1];
   //Input[7] = S[2];
//============================================================================================
   VAR_MACD = GetMACD(Symbol(),0,S);
   Input[8] = S[0];
   Input[9] = S[1];
   Input[10] = S[2];
   Input[11] = S[3];
   Input[12] = S[4];
//============================================================================================
   VAR_MA_SIGNAL = MA_SIGNAL(Symbol(),0,S);
   Input[13] = S[0];
   Input[14] = S[1];
   Input[15] = S[2];
   Input[16] = S[3];
   //Input[17] = ARTSign();
}
//ææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææ

//ææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææ
// Âûñ÷èòûâàåì ïðîöåíò îò ñâîáîäíûõ ñðåäñòâ
//ææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææ
double Lots()
   {
   double mLot = NormalizeDouble( AccountEquity()*Prots/100/1000, 1);// Âû÷èñëÿåì êîëè÷. ëîòîâ  
   if (mLot<0.1)mLot = 0.1;                                          // Äëÿ òåñòà íà ïîñòîÿí. ìèíèì. ëîòàõ
   return(mLot);
   }
//ææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææ

//ææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææ
// Êîíòðîëü áâðîâ
//ææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææ
bool ControlBats()
{
   if(iTime(Symbol(),0,0) == VAR_prevtime)  return(false);
   VAR_prevtime = iTime(Symbol(),0,0);
   return (true);
}
//ææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææ

Comments