Orders Execution
0
Views
0
Downloads
0
Favorites
tral_to_close
//+------------------------------------------------------------------+
//| Ñîâåòíèê îòñëåæèâàåò îòêðûòûå ðûíî÷íûå îðäåðà BUY è SELL |
//| è êàê òîëüêî îðäåð ñòàíîâèòñÿ áåçóáûòî÷íûì òðàëèò èõ íà |
//| óñòàíîâëåííîì ðàññòîÿíèè razmer_trala_punktov |
//+------------------------------------------------------------------+
#property copyright "Vyacheslav Barbakov"
#property link "barbakov@bk.ru"
//+------------------------------------------------------------------+
extern int razmer_trala_punktov = 10;
extern int MagicNumber = 0;
//+------------------------------------------------------------------+
double uroven_buy_close = 0;
double uroven_sell_close = 0;
double uroven_buy_bezubitka = 0;
double uroven_sell_bezubitka = 0;
double stop_buy;
//+------------------------------------------------------------------+
int deinit()
{
Comment(" ");
return(0);
}
//+------------------------------------------------------------------+
int start()
{
Comment("\n Ñîâåòíèê îæèäàåò ðûíî÷íûõ îðäåðîâ BUY èëè SELL",
"\n è âûõîä íà ïðèáûëüíîñòü ", razmer_trala_punktov, " ïóíêòîâ");
static bool res_close_buy = true;
static bool res_close_sell = true;
static int rost = 0;
static int padenie = 0;
double otstup = NormalizeDouble(razmer_trala_punktov * Point, Digits);
for (int t = 0; t < OrdersTotal(); t ++)
if(OrderSelect(t, SELECT_BY_POS))
{
//+------------------------------------------------------------------+
//| Ïðîâåðÿåì îòêðûòûå ðûíî÷íûå îðäåðà BUY
//+------------------------------------------------------------------+
if (OrderType() == 0 && OrderMagicNumber() == MagicNumber)
{
if (Bid > OrderOpenPrice() && rost == 0)
{
uroven_buy_bezubitka = Bid;
uroven_buy_close = Bid;
rost = 1;
}
if (Bid > uroven_buy_bezubitka && uroven_buy_bezubitka != 0 && Bid > uroven_buy_close)
{
uroven_buy_close = Bid;
}
if (uroven_buy_close - Bid > 0)
{
int otkat_buy = (uroven_buy_close - Bid)* MathPow(10, Digits);
}
Comment("\n Ïðèáûëü: ", OrderProfit(), " ", AccountCurrency(), ", èëè ", OrderProfit() / OrderLots(), " ïóíêòîâ.",
"\n Óðîâåíü ìàêñèìóìà: ", DoubleToStr(uroven_buy_close, Digits),
"\n Óðîâåíü áåçóáûòêà: ", DoubleToStr(uroven_buy_bezubitka, Digits),
"\n Îòêàò: ", otkat_buy, ", äî ", razmer_trala_punktov );
if (Bid + otstup < uroven_buy_close || !res_close_buy && uroven_buy_close != 0)
{
res_close_buy = OrderClose(OrderTicket(), OrderLots(), Bid, 3, Blue);
if (res_close_buy)
{
Comment(" ");
rost = 0;
uroven_buy_bezubitka = 0;
uroven_buy_close = 0;
}
}
}
//+------------------------------------------------------------------+
//| Ïðîâåðÿåì îòêðûòûå ðûíî÷íûå îðäåðà SELL
//+------------------------------------------------------------------+
if (OrderType() == 1 && OrderMagicNumber() == MagicNumber)
{
if (Ask < OrderOpenPrice() && padenie == 0)
{
uroven_sell_bezubitka = Ask;
uroven_sell_close = Ask;
padenie = 1;
}
if (Ask < uroven_sell_bezubitka && uroven_sell_bezubitka != 0 && Ask < uroven_sell_close)
{
uroven_sell_close = Ask;
}
if (Ask - uroven_sell_close > 0 && uroven_sell_close != 0)
{
int otkat_sell = (Ask - uroven_sell_close)* MathPow(10, Digits);
}
Comment("\n Ïðèáûëü: ", OrderProfit(),
"\n Óðîâåíü ìàêñèìóìà: ", DoubleToStr(uroven_sell_close, Digits),
"\n Óðîâåíü áåçóáûòêà: ", DoubleToStr(uroven_sell_bezubitka, Digits),
"\n Îòêàò: ", otkat_sell );
if (Ask - otstup > uroven_sell_close || !res_close_sell && uroven_sell_close != 0)
{
res_close_sell = OrderClose(OrderTicket(), OrderLots(), Ask, 3, Blue);
if (res_close_sell)
{
padenie = 0;
uroven_sell_bezubitka = 0;
uroven_sell_close = 0;
Comment(" ");
}
}
}
//+------------------------------------------------------------------+
}
return(0);
}
//+------------------------------------------------------------------+
Comments
Markdown Formatting Guide
# H1
## H2
### H3
**bold text**
*italicized text*
[title](https://www.example.com)

`code`
```
code block
```
> blockquote
- Item 1
- Item 2
1. First item
2. Second item
---