花生网

标题: 请教一下OT_LIMIT与OT_STOP在发单时有区别吗? [打印本页]

作者: liujam    时间: 2012-10-29 10:13     标题: 请教一下OT_LIMIT与OT_STOP在发单时有区别吗?

本帖最后由 liujam 于 2012-10-29 10:21 编辑

RT,一直没弄清楚OT_LIMIT与OT_STOP是否有区别,按我的理解都是指定价格发单,应该没区别吧,在实际交易中,如分别始用OT_LIMIT与OT_STOP对交易结果会否产生差异?

另外,使用#run_every_tick与未使用#run_every_tick,会影响止损单与限价单触发动作的精度吗?考虑到性能,我倾向于不使用#run_every_tick,如果没有太大区别的话。

本来想跑一下自动交易,看看有无差异,想想还是问一问,来得直接


作者: liujam    时间: 2012-10-29 10:26

1019版后,发现自动交易比此前版本占用的CPU要降低了很多,赞一下,
主连可直接映射主力合约交易,非常方便,天才的创意啊
作者: bt11    时间: 2012-10-29 10:33

下单类型为OT_Stop停损单,它与限价单正好是相反的,当我们要买入时,限价单是埋在当前市价的下方,等待价格下跌到限价时成交,而停损单是在当前市价的上方,等待价格向上突破时成交。卖出时方向相反。对于停损单这个术语,卖出停损容易明白,对于买入开仓,可以这样理解,因为我是要买入的,价格在不断往上行,少赚也是一种亏损,所以在价格升到一定位置时买入“停损”。

需要注意的是,停损价之后的Slippage参数都被设为-1,这表示只要价格突破停损价就交易,例如次日跳空高开,不管多高都要买入。如果要限制交易价格,太高了就不买入,那就设置Slippage参数为允许的范围,这种单叫做停损限价单,





作者: liujam    时间: 2012-10-29 10:50

bt11 发表于 2012-10-29 10:33
下单类型为OT_Stop停损单,它与限价单正好是相反的,当我们要买入时,限价单是埋在当前市价的下方,等待价 ...

谢谢回复,逻辑上我是可以理解的。我产生这个疑问是因为上次就预埋单的问题,问过一次仁心慧能老师,按他的回复,我理解的是金魔方没有预埋单机制,采用的是盘面价格触发的发单机制,所以我才有了这个上面这个结论:在price/slippage参数设置是一致的前题下,分别采用OT_Stop和OT_LIMIT在交易时应该没有任何差异。

另外,使用#run_every_tick与未使用#run_every_tick,会影响止损单与限价单触发动作的精度吗?考虑到性能,我倾向于不使用#run_every_tick,如果没有太大区别的话。

作者: John    时间: 2012-10-29 11:07

是否带 #Run_Every_Tick 对于出发挂单的精度是一样的。#Run_Every_Bar公式本身是每根运行一次(下一根K线的第一个Tick到来时运行),但止盈止损和挂单是每个Tick都检查的


作者: John    时间: 2012-10-29 11:16

OT_LIMIT 是向下的意思(买的时候)
OT_STOP 是向上的意思(买的时候)

Limit 叫做限价,只能低于此价格买入;Stop 叫做追价,只能高于此价格买入;卖的时候相反 。
Buy 和 BuyToCover 都算作买方向,Sell和SellShort都算作卖方向。

注意 OT_STOP 通常是比现价要高的,追高买入。比方说现价100,下 110 Stop,
要等价格上穿110才会成交,如果下Limit 110, 就立刻以100的价格成交了。



作者: bt11    时间: 2012-10-29 11:27

John 发表于 2012-10-29 11:16
OT_LIMIT 是向下的意思(买的时候)
OT_STOP 是向上的意思(买的时候)


作者: liujam    时间: 2012-10-29 18:51

John 发表于 2012-10-29 11:16
OT_LIMIT 是向下的意思(买的时候)
OT_STOP 是向上的意思(买的时候)

这次明白了,非常感谢!
作者: wh8510    时间: 2012-10-29 22:32

是不是就可以理解成 limit是挂单,stop是追单,虽然金魔方不会提前挂单
作者: 仁心慧能    时间: 2012-10-30 11:04

wh8510 发表于 2012-10-29 22:32
是不是就可以理解成 limit是挂单,stop是追单,虽然金魔方不会提前挂单

是的,limit 即有些软件的挂单(埋地雷),stop即有些软件所称的追单。
不提前挂单也就不占用保证金

若委托单的类型是thisbar close 或nextbar,公式不需要在本周期未结束时频繁计算,不需要run_every_tick,大大减少cpu占用。setsoploss类函数系统会每个tick自己判断是否满足条件需要执行

将来金魔方支持thisbar的其它类型单,需要在本周期未结束时就随时下单,才需要run_every_tick
作者: wh8510    时间: 2012-10-31 16:46

仁心慧能 发表于 2012-10-30 11:04
是的,limit 即有些软件的挂单(埋地雷),stop即有些软件所称的追单。
不提前挂单也就不占用保证金

其实limit单可以让用户自己选择是否要提前挂单是最好的,也就是再增加一个控制函数,能用户自己在公式中让选择是否挂单。
提前挂单能够保证优先成交,平仓单不用保证金吧,当然提前挂单的话就需要再增加一个撤单函数了,用户自己设置撤单条件。以前在公司刷单的时候都是用的提前挂单排队刷,本来想写个刷单策略的,如果能挂单的话应该可以写出来。再增加一个监控盘口的函数就更完美了,比如大单,多空等,参数用户自己设置。
作者: liujam    时间: 2012-11-2 18:23

wh8510 发表于 2012-10-31 16:46
其实limit单可以让用户自己选择是否要提前挂单是最好的,也就是再增加一个控制函数,能用户自己在公式中 ...

确实,我也有同样的想法。至少平仓时如果能提前挂单,就非常有用了,特别是用于止损时,可以有效减少滑点误差。

我在做测试时,设的2个滑点误差,感觉仍然不一定能接近真实交易情况,止损单滑5点以上是比较常见的(秒杀情况)。

作者: wh8510    时间: 2012-11-2 18:39

liujam 发表于 2012-11-2 18:23
确实,我也有同样的想法。至少平仓时如果能提前挂单,就非常有用了,特别是用于止损时,可以有效减少滑点 ...

嗯 是啊 但是管理员好像没看到
作者: liujam    时间: 2012-11-2 18:58

wh8510 发表于 2012-11-2 18:39
嗯 是啊 但是管理员好像没看到

你的建议蛮好,保持现有的逻辑不变,新增一个特别的挂单指令和撤单指令。何时挂单,何时撤单,让用户自己来决定就可以了,策略是用户自己编的,用户自己完全可以撑握挂单与撤单时机,不用担心产生逻辑问题。如果产生了问题,那也是用户自己没编好策略,导致真实交易与虚拟交易信号不同步。
作者: liujam    时间: 2012-11-2 19:07

比如我有一个日内策略,止损通常发生在10:00以前,如果能提前挂止损单,就非常好处理,我在开仓后,就马上埋一个止损单。

当时间走到10点以后,我撤单就行了。后面就还是按老路子,盘面价格触发平仓动作。
作者: liujam    时间: 2012-11-2 19:14

本帖最后由 liujam 于 2012-11-2 20:09 编辑
wh8510 发表于 2012-11-2 18:39
是有必要有提前挂单到交易所的机制,将来会实现。
但这种单未必会成交,如果不成交,就与虚拟交易不一致了...
谢谢,原来如此,我以为都可以挂止损单。

同步可能确实是个重点,可以保证评测预期与真实交易保持一致,目前来看还是在评测时尽量考虑进去真实滑点情况,保证与预期一致了



作者: 仁心慧能    时间: 2012-11-2 19:22

是有必要有提前挂单到交易所的机制,将来会实现。
但这种单在虚拟交易成交时,它未必会成交,如果不成交,就与虚拟交易不一致了
不是所有交易所都支持挂止损单
开仓的限价单、平仓的止盈单都可以提前挂出去
作者: 花生油    时间: 2012-11-4 03:24

需要run_every_tick
作者: 312gd    时间: 2012-12-23 09:47

limit 即有些软件的挂单(埋地雷),stop即有些软件所称的追单。

作者: lufuding    时间: 2013-1-18 13:59



上述功能何时能够实现啊?


还有OT_LIMIT和OT_STOP单什么时候能在历史测试时在指定的价格,而是不像现在的次周期(次周期滑点太大了)
作者: 好奇的火星    时间: 2014-8-13 23:00

若委托单的类型是thisbar close 或nextbar,公式不需要在本周期未结束时频繁计算,不需要run_every_tick,大大减少cpu占用。setsoploss类函数系统会每个tick自己判断是否满足条件需要执行
原来如此




欢迎光临 花生网 (http://www.hs633.com/) Powered by Discuz! X2