extern int k=1; extern int x; extern int y; //+------------------------------------------------------------------+ //| expert initialization function | //+------------------------------------------------------------------+ int init() { //----
//---- return(0); } //+------------------------------------------------------------------+ //| expert deinitialization function | //+------------------------------------------------------------------+ int deinit() { int i; //---- ObjectsDeleteAll();
for(i=OrdersTotal()-1; i>=0;i--) { if(OrderSelect(i,SELECT_BY_POS)) { if (OrderType() == OP_BUYSTOP) { OrderDelete(OrderTicket()); } if (OrderType() == OP_SELLSTOP) { OrderDelete(OrderTicket()); } } } //---- return(0); } //+------------------------------------------------------------------+ //| expert start function | //+------------------------------------------------------------------+ int start() { int ticket1,ticket2, total,i; double price; string Symb; //1.выставление отложенных ордеров Symb=Symbol();
//+------------------------------------------------------------------+ //| expert start function | //+------------------------------------------------------------------+ int start() { int ticket1,ticket2, total,i;
日付は同じで、2月15日から16日です。
条件はすべて同じだが、結果は毎回異なる。
保留中の注文が トリガーされたかどうかを知るにはどうすればよいですか?
または一般的に - 異なる方向に2つの保留中の注文は、すぐに1つがトリガされたように、我々は2番目のものを閉じている...私は鈍いです - 私を助けてください。
条件はすべて同じだが、結果は毎回異なる。
スプレッドは、その時点の市場から取得し、テスト期間を通じて同一と見なします。
ああ...それだ!今わかった!ありがとうございます。)
また、レポートにはモデリング品質の項目があり、常に25%となっています。
ああ...、それだ!今わかったよ!どうもありがとう。)
また、レポートにはモデリング品質の項目があり、常に25%となっています。
モデリングに関する記事を読む
のように https://www.mql5.com/ru/articles/1513
モデリングに関する記事を読む
例)https://www.mql5.com/ru/articles/1513
ああ、本当にありがとう。)
保留中の注文がトリガーされたかどうかを確認し、そのチケットを比較するにはどうすればよいですか?
保留中の注文がトリガーされたかどうかを確認し、そのチケットを比較するにはどうすればよいですか?
//+------------------------------------------------------------------+
//| Stas_helper_v01.mq4 |
//| DOC |
//| DR_GAD@mail.ru |
//+------------------------------------------------------------------+
#property copyright "DOC"
#property link "DR_GAD@mail.ru"
//--- input parameters
extern double Stop=15;
extern double Profit=35;
extern double Lots=1;
extern int k=1;
extern int x;
extern int y;
//+------------------------------------------------------------------+
//| expert initialization function |
//+------------------------------------------------------------------+
int init()
{
//----
//----
return(0);
}
//+------------------------------------------------------------------+
//| expert deinitialization function |
//+------------------------------------------------------------------+
int deinit()
{
int i;
//----
ObjectsDeleteAll();
for(i=OrdersTotal()-1; i>=0;i--)
{
if(OrderSelect(i,SELECT_BY_POS))
{
if (OrderType() == OP_BUYSTOP)
{
OrderDelete(OrderTicket());
}
if (OrderType() == OP_SELLSTOP)
{
OrderDelete(OrderTicket());
}
}
}
//----
return(0);
}
//+------------------------------------------------------------------+
//| expert start function |
//+------------------------------------------------------------------+
int start()
{
int ticket1,ticket2, total,i;
double price;
string Symb;
//1.выставление отложенных ордеров
Symb=Symbol();
if(k==1)
{
price=NormalizeDouble((Ask-Bid)/2,Digits);
ticket1=OrderSend(Symb,OP_BUYSTOP,Lots,Bid+((Stop*Point))+price,3,Bid+(Ask-Bid)/2,Bid+((Stop*Point))+price+Profit*Point, "Отложенник",1,0,Green);
if(ticket1<0)
{
Print("Ошибка!#",GetLastError());
return(0);
}
ticket2=OrderSend(Symb,OP_SELLSTOP,Lots,Bid-((Stop*Point))+price,3,Ask-(Ask-Bid)/2,Bid-((Stop*Point))+price-Profit*Point, "Отложенник2",2,0,Green);
if(ticket2<0)
{
Print("Ошибка!#",GetLastError());
return(0);
}
k=2;
}
//1.-----------------------------
//2. Если ордер открылся.
if (k==2)
{
OrderSelect(ticket1,SELECT_BY_TICKET,MODE_TRADES);
if (OrderType()==OP_BUY)
{
OrderDelete(ticket2);
k=3;
}
OrderSelect(ticket2,SELECT_BY_TICKET,MODE_TRADES);
if (OrderType()==OP_SELL)
{
OrderDelete(ticket1);
k=3;
}
}
//2----------------------
return(0);
}
//+------------------------------------------------------------------+
なぜ他の保留中の注文がクローズされないのでしょうか?
//+------------------------------------------------------------------+
//| expert start function |
//+------------------------------------------------------------------+
int start()
{
int ticket1,ticket2, total,i;
なぜ他の保留中の注文がクローズされないのでしょうか?