Orders Execution
Miscellaneous
0
Views
0
Downloads
0
Favorites
Profitability Reports
104.00 %
Total Trades
6
Won Trades
2
Lost trades
4
Win Rate
33.33 %
Expected payoff
0.10
Gross Profit
14.40
Gross Loss
-13.80
Total Net Profit
0.60
-100%
-50%
0%
50%
100%
103.00 %
Total Trades
5
Won Trades
1
Lost trades
4
Win Rate
20.00 %
Expected payoff
0.08
Gross Profit
12.60
Gross Loss
-12.20
Total Net Profit
0.40
-100%
-50%
0%
50%
100%
jpytest
//+------------------------------------------------------------------+
//| jpytest.mq4 |
//| Copyright © 2009, MetaQuotes Software Corp. |
//| http://www.metaquotes.net |
//+------------------------------------------------------------------+
#property copyright "Copyright © 2009, MetaQuotes Software Corp."
#property link "http://www.metaquotes.net"
extern double LotSize=0.1; //Ðàçìåð ëîòà äëÿ òîðãîâëè
int MagicNumber;
int OpenedOrder;
double ExtendPoint=1; //äëÿ ÄÖ ñ äîïîëíèòåëüíûì çíàêîì ExtendPoint=10
int init()
{
return(0);
}
int deinit()
{
return(0);
}
int start()
{
MagicNumber=900;
datetime curtime=iTime(NULL,PERIOD_M1,0);
if (ExistPositions(Symbol(),-1 , MagicNumber)) {
if ((TimeHour(curtime)==5 && TimeMinute(curtime)==55) || (TimeHour(curtime)==6 && TimeMinute(curtime)==0))
OrderClose(OpenedOrder,LotSize,Ask,3);
}
else {
if (TimeHour(curtime)==4 && TimeMinute(curtime)==0)
iSetOrder(Symbol(), OP_SELL, 20*ExtendPoint,10000);
}
MagicNumber=901;
if (ExistPositions(Symbol(),-1 , MagicNumber)) {
if ((TimeHour(curtime)==12 && TimeMinute(curtime)==55) || (TimeHour(curtime)==13 && TimeMinute(curtime)==0))
OrderClose(OpenedOrder,LotSize,Bid,3);
}
else {
if (TimeHour(curtime)==10 && TimeMinute(curtime)==0)
iSetOrder(Symbol(), OP_BUY, 15*ExtendPoint,10000);
}
return(0);
}
bool iSetOrder(string symbol, int cmd, double stoploss, double takeprofit, string comment=""){
int Dist_SL =stoploss; // Çàäàííûé SL (pt)
int Dist_TP =takeprofit; // Çàäàííûé TP (pt)
double Prots=0.10; // Ïðîöåíò ñâîá. ñð.
string Symb=symbol; // Ôèíàíñ. èíñòðóìåíò
double i=0;
double SL;
double TP;
color arr;
double price;
//--------------------------------------------------------------- 2 --
while(i<5) // Öèêë îòêðûòèÿ îðä.
{
if (cmd==OP_BUY) {
SL=Bid - New_Stop(stoploss)*Point; // Âû÷èñëåíèå SL îòêð.
TP=Bid + New_Stop(takeprofit)*Point; // Âû÷èñëåíèå TP îòêð.
Alert("Ïîïûòêà îòêðûòü Buy. Îæèäàíèå îòâåòà..");
price=Ask;
arr=Maroon;
} else
{
SL=Ask + New_Stop(stoploss)*Point; // Âû÷èñëåíèå SL îòêð.
TP=Ask - New_Stop(takeprofit)*Point; // Âû÷èñëåíèå TP îòêð.
price=Bid;
arr=Green;
}//if else
if (stoploss==0) SL=0;
if (takeprofit==0) TP=0;
int ticket=OrderSend(symbol,cmd,LotSize,price,3,SL,TP,comment,MagicNumber,0,arr);//Îòêðûòèå Buy
//--------------------------------------------------------- 7 --
if (ticket>0) // Ïîëó÷èëîñü :)
{
Alert ("Îòêðûò îðäåð Buy ",ticket);
OpenedOrder=ticket;
return(True);
break; // Âûõîä èç öèêëà
}
//--------------------------------------------------------- 8 --
int Error=GetLastError(); // Íå ïîëó÷èëîñü :(
switch(Error) // Ïðåîäîëèìûå îøèáêè
{
case 135:Alert("Öåíà èçìåíèëàñü. Ïðîáóåì åù¸ ðàç..");
RefreshRates(); // Îáíîâèì äàííûå
i=i+1;
continue; // Íà ñëåä. èòåðàöèþ
case 136:Alert("Íåò öåí. Æä¸ì íîâûé òèê..");
while(RefreshRates()==false) // Äî íîâîãî òèêà
Sleep(1); // Çàäåðæêà â öèêëå
continue; // Íà ñëåä. èòåðàöèþ
case 146:Alert("Ïîäñèñòåìà òîðãîâëè çàíÿòà. Ïðîáóåì åù¸..");
Sleep(500); // Ïðîñòîå ðåøåíèå
i=i+0.3;
RefreshRates(); // Îáíîâèì äàííûå
continue; // Íà ñëåä. èòåðàöèþ
}
switch(Error) // Êðèòè÷åñêèå îøèáêè
{
case 2 : Alert("Îáùàÿ îøèáêà.");
break; // Âûõîä èç switch
case 5 : Alert("Ñòàðàÿ âåðñèÿ êëèåíòñêîãî òåðìèíàëà.");
break; // Âûõîä èç switch
case 64: Alert("Ñ÷åò çàáëîêèðîâàí.");
break; // Âûõîä èç switch
case 133:Alert("Òîðãîâëÿ çàïðåùåíà");
break; // Âûõîä èç switch
default: Alert("Âîçíèêëà îøèáêà ",Error);// Äðóãèå âàðèàíòû
}
break; // Âûõîä èç öèêëà
}
//--------------------------------------------------------------- 9 --
return(False);
}
int New_Stop(int Parametr) // Ïðîâåðêà ñòîï-ïðèê.
{
int Min_Dist=MarketInfo(Symbol(),MODE_STOPLEVEL);// Ìèíèì. äèñòàíöèÿ
if (Parametr < Min_Dist) // Åñëè ìåíüøå äîïóñò.
{
Parametr=Min_Dist; // Óñòàíîâèì äîïóñò.
Alert("Óâåëè÷åíà äèñòàíöèÿ ñòîï-ïðèêàçà.");
}
return(Parametr); // Âîçâðàò çíà÷åíèÿ
}
bool ExistPositions(string sy="", int op=-1, int mn=-1, datetime ot=0) {
int i, k=OrdersTotal();
if (sy=="0") sy=Symbol();
for (i=0; i<k; i++) {
if (OrderSelect(i, SELECT_BY_POS, MODE_TRADES)) {
if (OrderSymbol()==sy || sy=="") {
if (OrderType()==OP_BUY || OrderType()==OP_SELL) {
if (op<0 || OrderType()==op) {
if (mn<0 || OrderMagicNumber()==mn) {
if (ot<=OrderOpenTime()) return(True);
}
}
}
}
}
}
return(False);
}
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
---