hjueiisyx8lp2o379e_www_forex-instruments_info

Author: Copyright � 2006, �������� :-)
Orders Execution
Checks for the total of open ordersIt automatically opens orders when conditions are reachedIt can change open orders parameters, due to possible stepping strategyIt Closes Orders by itself
0 Views
0 Downloads
0 Favorites
hjueiisyx8lp2o379e_www_forex-instruments_info
//+------------------------------------------------------------------+
//|                                                    àâòîòðåéä.mq4 |
//|                      Copyright © 2006, MetaQuotes Software Corp. |
//|                                        http://www.metaquotes.net |
//+------------------------------------------------------------------+
#property copyright "Copyright © 2006, íàðîäíîå :-)"
#property link      "scrivimi@mail.ru"
extern int óðîâåíü_îðäåðîâ=20;
extern int óðîâåíü_ïðîôèòà=-2;
extern int èñòå÷åíèå_ìèíóò=20;
extern int áåçóñëîâíàÿ_ôèêñàöèÿ=30;
extern int ñòàáèëèçàöèÿ_ïóíêòîâ=25;
extern double ëîòîâ=0.1;
//+------------------------------------------------------------------+
//| expert initialization function                                   |
//+------------------------------------------------------------------+
int init()
  {
//----
//----
   return(0);
  }
//+------------------------------------------------------------------+
//| expert deinitialization function                                 |
//+------------------------------------------------------------------+
int deinit()
  {
//----
//----
   return(0);
  }
//+------------------------------------------------------------------+
//| expert start function                                            |
//+------------------------------------------------------------------+
int start()
  {
   double pip=MarketInfo(Symbol(),MODE_TICKSIZE);
//----
   if (OrdersTotal()==0)
     {
      double buy= Ask+óðîâåíü_îðäåðîâ*pip;
      double sell= Bid-óðîâåíü_îðäåðîâ*pip;
      int ticket1=OrderSend(Symbol(),OP_BUYSTOP,ëîòîâ,buy,3,0,0,"buy",16384,CurTime()+èñòå÷åíèå_ìèíóò*60,Green);
      int ticket2=OrderSend(Symbol(),OP_SELLSTOP,ëîòîâ,sell,3,0,0,"buy",16384,CurTime()+èñòå÷åíèå_ìèíóò*60,Green);
     }
   if (OrdersTotal()>0)
     {
      for(int i=0;i<=OrdersTotal();i++)
        {
         OrderSelect(i,SELECT_BY_POS,MODE_TRADES);
//----
         ticket1=OrderTicket();
         double profit1=OrderProfit();
         double price1=OrderOpenPrice();
         if(OrderType()==OP_BUY)
           {
            OrderSelect(i+1,SELECT_BY_POS,MODE_TRADES);
            ticket2=OrderTicket();
            if(OrderType()==OP_SELLSTOP)//---ïðîâåðêà çàêðûòèÿ ïî ïðèáûëè ¹1:
              {
               OrderModify(OrderTicket(),OrderOpenPrice(),0,0,0,CLR_NONE);
               if(profit1>óðîâåíü_ïðîôèòà&&MathAbs(Close[1]-Open[1])<=ñòàáèëèçàöèÿ_ïóíêòîâ*pip)
                 {
                  OrderClose(ticket1,ëîòîâ,Bid,3,CLR_NONE);
                  OrderDelete(ticket2);
                 }
               if(MathAbs(Close[1]-Open[1])<=ñòàáèëèçàöèÿ_ïóíêòîâ*pip&&MathAbs(Close[2]-Open[2])<=ñòàáèëèçàöèÿ_ïóíêòîâ*pip)
                 {
                  OrderClose(ticket1,ëîòîâ,Bid,3,CLR_NONE);
                  OrderDelete(ticket2);
                 }
               if(profit1>=áåçóñëîâíàÿ_ôèêñàöèÿ)
                 {
                  OrderClose(ticket1,ëîòîâ,Bid,3,CLR_NONE);
                  OrderDelete(ticket2);
                 }
              }
            if(OrderType()==OP_SELL)
              {//---ñðàçó çàêðûòèå îáîèõ:
               OrderClose(ticket1,ëîòîâ,Bid,3,CLR_NONE);
               OrderClose(ticket2,ëîòîâ,Ask,3,CLR_NONE);
              }
           }
         OrderSelect(i,SELECT_BY_POS,MODE_TRADES);
         if(OrderType()==OP_BUYSTOP)
           {
            OrderSelect(i+1,SELECT_BY_POS,MODE_TRADES);
            ticket2=OrderTicket();
            if(OrderType()==OP_SELL)//---ïðîâåðêà çàêðûòèÿ ïî ïðèáûëè ¹2:
              {
               OrderModify(ticket1,price1,0,0,0,CLR_NONE);
               double profit2=OrderProfit();
               if(profit2>óðîâåíü_ïðîôèòà&&MathAbs(Open[1]-Close[1])<=ñòàáèëèçàöèÿ_ïóíêòîâ*pip)
                 {
                  OrderClose(ticket2,ëîòîâ,Bid,3,CLR_NONE);
                  OrderDelete(ticket1);
                 }
               if(MathAbs(Open[1]-Close[1])<=ñòàáèëèçàöèÿ_ïóíêòîâ*pip&&MathAbs(Open[2]-Close[2])<=ñòàáèëèçàöèÿ_ïóíêòîâ*pip)
                 {
                  OrderClose(ticket2,ëîòîâ,Bid,3,CLR_NONE);
                  OrderDelete(ticket1);
                 }
               if(profit2>=áåçóñëîâíàÿ_ôèêñàöèÿ)
                 {
                  OrderClose(ticket2,ëîòîâ,Bid,3,CLR_NONE);
                  OrderDelete(ticket1);
                 }
              }
           }
        }
     }
//----
   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 ---