admin管理员组

文章数量:1536400

2024年7月15日发(作者:)

//.删除所有挂件

int start()

{

ObjectsDeleteAll(0);

return(0);

}

################################################

//全部平仓

int start()

{

int cnt, total;

total=OrdersTotal();

for(cnt=total-1;cnt>=0;cnt--)

{

OrderSelect(cnt, SELECT_BY_POS, MODE_TRADES);

if(OrderType()==OP_SELL)

{

OrderClose(OrderTicket(),OrderLots(),Ask,3,CLR_NONE);

}

if(OrderType()==OP_BUY)

{

OrderClose(OrderTicket(),OrderLots(),Bid,3,CLR_NONE);

}

}

return(0);

}

########################################

//删除所有挂单

#include <>

#include <>

int start()

{

if (IsTradeAllowed()==false) { Alert("自动交易功能未打开,请在选项中设置。");

return; }

if(MessageBox("是否要删除所有挂单? ", "删除挂单",

MB_YESNO|MB_ICONQUESTION) != IDYES) return;//

int total=OrdersTotal();

for(int i=total-1; i>=0; i--)

{

if(OrderSelect(i,SELECT_BY_POS,MODE_TRADES) ==false) continue;

if(OrderType() < 2) continue;

while(true)

{

if( OrderDelete(OrderTicket()) !=TRUE ) Print("LastError

ErrorDescription(GetLastError()));

else break;

}

}

return;

}

#########################################

//取消所有单子

int start()

{

", =

bool result;

double price;

int cmd,error;

while(OrderSelect(0,SELECT_BY_POS,MODE_TRADES))

{

cmd=OrderType();

//---- first order is buy or sell

if(cmd==OP_BUY || cmd==OP_SELL)

{

while(true)

{

if(cmd==OP_BUY) price=Bid;

else price=Ask;

result=OrderClose(OrderTicket(),OrderLots(),price,3,CLR_NONE);

if(result!=TRUE) { error=GetLastError(); Print("LastError = ",error); }

else error=0;

if(error==135) RefreshRates();

else break;

}

}

}

Print( "单子全平 ! ");

return(0);

}

########################################

//------------定单操作函数版本1.3------------------------

//m取值0、1、2、3、4、5、6、7//0-5表示定单类型//6表示所有//也可以指定某

个定单号//7表示清理所有挂单

//1.0版本 0表示多单平仓、1表示空单平仓、2表示BUYLIMIT、3表示SELLLIMIT、

4表示BUYSTOP、5表示SELLSTOP

//1.1版本 继续1.0版本所有功能,加入6删除所有挂单,平仓所有成交定单

//1.2版本 继续1.1版本功能,加入7删除所有挂单

bool delwhat(int m)

{

bool trueorfalse;

if(m > 100000)

{

if(OrderSelect(m,SELECT_BY_TICKET,MODE_TRADES) == true)

{

if(OrderType() == 0)

{

trueorfalse = OrderClose(OrderTicket(),OrderLots(),Bid,maxslippages,Yellow);

//平仓操作

return(trueorfalse);

} else if(OrderType() == 1)

{

trueorfalse

OrderClose(OrderTicket(),OrderLots(),Ask,maxslippages,Yellow);//平仓操作

return(trueorfalse);

} else if(OrderType() > 1)

{

trueorfalse = OrderDelete(OrderTicket()); //删除挂单操作

return(trueorfalse);

}

=

}

else

{

Print("赋予删除函数的参数数值无效,请检查");

//MT_SpeechText("赋予删除函数的参数数值无效,请检查",1);

}

}

if (-1 < m < 8)

{

for(b=0;b<=OrdersTotal();b ) //循环建立一系列数字为序列号

{

if (OrderSelect(b,SELECT_BY_POS,MODE_TRADES) == false) break;//根据系列号

抓取定单,失败打断该操作

if(m == 0) //假如参数m的值为0,表示假如抓取的当前定单为buy单

{

if(OrderType()==0)

{

trueorfalse

OrderClose(OrderTicket(),OrderLots(),Bid,maxslippages,CLR_NONE); //平仓操作

return(trueorfalse);

} else {} //返回操作结果,成功为1,失败为0

} else if(m == 1) //抓取sell单

{

if(OrderType()==1)

{

trueorfalse

OrderClose(OrderTicket(),OrderLots(),Ask,maxslippages,CLR_NONE);//平仓操作

return(trueorfalse);

=

=

} else {}

//返回操作结果

} else if(m > 1 && m < 6 ) //抓取4种挂单

{

if(OrderType()>1 && OrderType() == m)

{

trueorfalse = OrderDelete(OrderTicket()); //删除挂单操作

return(trueorfalse);

} else {}

//返回操作结果

} else if(m == 6) //表示需要删除所有挂单,平仓所有多和空单

{

if(OrderType() == 0)

{

trueorfalse

OrderClose(OrderTicket(),OrderLots(),Bid,maxslippages,CLR_NONE);//平仓操作

return(trueorfalse); //返回操作结果

} else if (OrderType() == 1)

{

trueorfalse

OrderClose(OrderTicket(),OrderLots(),Ask,maxslippages,CLR_NONE);//平仓操作

return(trueorfalse); //返回操作结果

} else if(OrderType()>1)

{

trueorfalse = OrderDelete(OrderTicket()); //删除挂单操作

return(trueorfalse);

}

=

=

} else if(m == 7)

{

if(OrderType()>1)

{

trueorfalse = OrderDelete(OrderTicket()); //删除挂单操作

return(trueorfalse);

} else {}

}

本文标签: 删除挂单表示操作版本