3.1.1 修改获利价、停损价、挂单价和到期时间

3.1.1 修改获利价、停损价、挂单价和到期时间

下单后,可用OrderModify()功能修改获利价、停损价、挂单价或到期时间。要使用OrderModify()功能,须提供欲修改的交易单号。OrderModify()功能的语法如下:

参考说明:

Ticket单号——欲修改的交易单号。

Price价格——新的挂单价。

TakePrice获利——新的获利价。

Expiration到期——新的挂单到期时间。

Arrow箭头——可选箭头颜色来分辨修改过的交易单。如未选择,则不会显示箭头。

交易单若修改顺利,OrderModify()会返回真(true)的布尔值;反之为假(false)。修改订单时,必须确保传递的函数的值是有效的。例如,该单必须是已成交的,我们不能修改一个平仓单。当修改预挂单的价格参数时,该单必须达到订单价格。修改后的订单价格也不能太接近目前的买价或卖价。我们也应该进行检查,以确保止损和停利是有效的。为此,我们可以使用价格确认程序,这个将在本章的后面介绍。

如果我们不修改特定的参数,就必须通过原始值的OrderM0dify()函数。例如,只是修改了止损挂单,那么就必须获取当前的订单价格和利润,可以使用OrderSelect()函数,并且将这些值传递至OrderModify()函数。

如果不指定变量值来尝试修改订单,这将得到一个错误:“no result”。这时验证该代码为什么以不变的值传给该函数。除此之外的错误是可忽略不计的。