OrderSend()是EA里用来下单或者挂单的函数
 老周
|
4382 人阅读
|
0 人评论
|
2016-10-31
	
老周
|
4382 人阅读
|
0 人评论
|
2016-10-31 
 
 
 
 
| 
 
 
| OrderSend()是EA里用来下单或者挂单的函数。 这个函数的完整组成为:
 int OrderSend (string symbol, int cmd, double volume, double price, int
 slippage, double stoploss,
 double takeprofit, string comment=NULL, int magic=0, datetime
 expiration=0, color arrow_color=CLR_NONE)
 Ordersend:
 这个函数的名字。这个函数将返回一个ticket号(ticket号码是一个单子的单号)作为该命令的号码;或者返回-1的值--如果交易请求被终端或服务器拒绝的话。如果想要知道被拒绝的原因,可以由函数GetLastError()得出。
 symbol: 货币对的名称。比如欧元美元的名称为EURUSD。
 cmd:交易的种类;比如说买单或者卖单。
 volume:交易手数。如果是即使交易要留意资金状况。如是挂单则无手数限制。
 price: 价位。可以为即使变动买卖价位,或者设定固定价位。
 slippage: 在开市场单时市场价为的最大允许滑点数。(只对市场单起作用,和挂单无关。)
 stoploss: 止损价位。
 takeprofit: 止盈价位。
 comment:对此单的文字叙述。
 magic:单子的magic号码。用于对此单的识别。
 expiration: 单子的作废时间。此日到来时挂单会自动取消。
 arrow_color:在图表上的开仓箭头的颜色。如果没有这个参数或者它的值等于CLR_NONE, 则图表上不会显示任何标记。
 当然上面的很多参数并不都会用到。我们可以举一个简化的下单指令的例子:
 //--------------------------------------------------------------------
 int start() // 特殊函数 start()
 { // Opening BUY
 OrderSend("EURUSD",OP_BUY,0.1,Ask,3,Bid-15*Point,Bid+15*Point);
 return; // 退出 start()
 }
 //--------------------------------------------------------------------
 在上面这个例子里,下单指令的分析如下:
 交易货币对:EURUSD
 开仓类型:买单
 手数:0.1手
 价位:市场卖价
 滑点:3点
 止损:市场买价减去15点
 止盈:市场买价加上15点
 把这个开单的命令放到EA里,就可以执行开单部分的操作了。里面的参数可以根据自己的需求修改。
 对于OrderSend()函数的交易类型。可以是以下任意值:
 常数        值        描述
 OP_BUY        0        买仓
 OP_SELL        1        卖仓
 OP_BUYLIMIT        2        买挂单交易
 OP_SELLLIMIT        3        卖挂单交易
 OP_BUYSTOP        4        买停挂单交易
 OP_SELLSTOP        5        卖停挂单交易
 
 
 | 
 | 
|  | 
|
|  | 
|  |