以文本方式查看主题 - 金字塔客服中心 - 专业程序化交易软件提供商 (http://weistock.com/bbs/index.asp) -- 金字塔软件问题提交 (http://weistock.com/bbs/list.asp?boardid=2) ---- 在走完k线交易和轮询模式中非常蛋疼的问题,始终没有版主给我成熟的解决办法 (http://weistock.com/bbs/dispbbs.asp?boardid=2&id=154554) |
-- 作者:antonyxu99 -- 发布时间:2017/6/1 17:56:02 -- 在走完k线交易和轮询模式中非常蛋疼的问题,始终没有版主给我成熟的解决办法 就是在走完k线交易和轮询模式中非常蛋疼的问题: 本来很简单的问题,就是给一个参数,在buy和sell中提供一个模式,是走完k线交易还是即时价交易就完了的事情, 最后搞得非常蛋疼。 走完k线模式肯定是不能满足要求的,因为很多止损都必须是即时价的,遇到极端行情等走完k线估计都爆仓了。 而开仓很多必须要走完k线模式,因为走完k线信号才能稳定,指标什么的也才能稳定。 所以只能在轮询模式中去实现走完k线交易。 在轮训模式中实现走完k线交易,你们给的解决方案是放到次周期开盘价交易来代替走完k线交易, 这个问题就严重了,因为如果是下午收盘的k线, 那次日(或者夜盘)可能出现顺向跳空,我必须要求他当根k线交易,而不能允许到第二天(或者到夜盘)。 这还不是最关键的问题,最关键的问题是,如果次周期开盘价交易,代码结构都会变,因为比如代码应该遵从执行的先后顺序结构, 但是如果是次周期开盘价的,那么所有即时价交易的代码,都要放到开仓代码的后面; 如果是收盘价交易,所有即时价交易的代码要放到开仓代码的前面。最后代码的结构就全搞乱了。 另外一种解决方案就是用dynainfo(207)或者currenttime来判断时间,看是否本根k线快要走完了, 但是这种方案的问题更严重,因为这两个函数都是依赖行情数据刷新的,如果走完k线那几秒成交清淡, 结果时间根本不刷新,结果经常出现信号根本发不出来。 最后的结果就是:我到现在都始终无法真正实现在轮询模式中用走完k线下单。 强烈建议标准版本中提供收盘价交易的模式(轮询模式下)!!!!!!!!!! 否则这么简单的一个问题,一直困扰大家,这可是程序化交易的基础啊!!!!!!!!
|
-- 作者:antonyxu99 -- 发布时间:2017/6/1 18:03:50 -- 补充一下,次周期开盘价交易代替走完k线交易,如果是一天收盘的k线,第二天(或者夜盘),可能出现大跳空,所以必须走完k线就要平仓(或者开仓),所以这种方案行不通 |
-- 作者:qwer123 -- 发布时间:2017/6/1 19:56:03 -- 不要去追求是全十美,可以这样解决: 1.如果要求不高,对于走完k线可以用下根k线开始价交易; 2.如果怕最后一根k线出信号,可以加一个判断,如果是当日最后一根k线出现信号就提前几秒下单。 3.如果怕交易清淡,不触发交易信号可以这样: p2:=if(islastbar,dynainfo(207),time); p2a:=if(islastbar,currenttime,time); p3a:=time0-timetot0(p2),linethick0; p3b:=time0-timetot0(p2a),linethick0; p3:=min(p3a,p3b),linethick0; 提前下单就会有信号消失的问题,必须要用持仓同步来纠正仓位。 用currenttime,就必须保证你的计算机时间必须和交易所的服务器一致。有时候交易所的服务器和标准时间并不一致。 其实,你可以精确测试,下根k线开仓和本根k线结束开仓的差别。我测试的结果影响并不大。 |
-- 作者:antonyxu99 -- 发布时间:2017/6/2 10:37:17 -- 谢谢qwer123的耐心解答,我再次仔细观察了一下,dynainfo(207)和currenttime 儿这两个时间是完全一样的,都是靠行情数据刷新, 所以你给的解决方案还是无法解决问题,成交清淡的时候根本发不出信号,我实盘的时候就已经吃了好几次亏了,亏大了!!!!!! 另外顺便说下:不是要求高不高的问题,是彻底的无法解决!!!一会儿让次周期开盘价交易,一会儿让我提前几秒下单,这代码彻底乱了, 每个开平仓逻辑都要判断两次?而且执行顺序还不一样,所以代码的位置都不一样。所以并不是你说的测试差别不大的问题,是根本不解决问题。 所以,无论是次周期开盘,还是提前开平,都是根本无法解决问题的,不是我要求高啊
|
-- 作者:王锋 -- 发布时间:2017/6/2 10:39:14 -- 图表在遇到行情交易清淡时是无法保证一直刷新的。 你可以使用后台程序化交易,使用不间断监控功能 |
-- 作者:antonyxu99 -- 发布时间:2017/6/2 11:35:49 -- 王锋 你好,我是标准版用户,谢谢。走完k线交易就是典型的时间触发型交易,为什么要有行情数据才能刷新图表产生交易呢? 那1秒轮训,难道轮训完了没有行情也就不交易吗?逻辑上讲不通啊 这是一个非常严重的问题!!!!!
[此贴子已经被作者于2017/6/2 11:37:10编辑过]
|
-- 作者:antonyxu99 -- 发布时间:2017/6/2 11:39:40 -- 特别是尾盘交易的问题,尾盘必须交易,否则等到第二天跳空就完蛋了,而尾盘一般是比较清淡的, 所以图表交易中,数据不刷新,就不交易,这是个严重的问题啊,我实盘就是这样亏了好多次
|
-- 作者:wenarm -- 发布时间:2017/6/2 12:36:02 -- 固定时间间隔是按设置的时间取抓取信号。 图表实现的机制就是基于历史数据已经行情更新。另外图表消耗资源比较大, 不可能一刻不停的运行策略,进而会影响策略运行效率。 从逻辑角度看,数据不刷新,策略中的条件判断的状态也不会变化。 5楼中已经说明,可以使用后台程序化方式,进行不间断监控处理。 |
-- 作者:antonyxu99 -- 发布时间:2017/6/2 17:41:49 -- 你让我们这些标准版的用户情何以堪啊????? 特别是:走完k线下单就是典型的以时间触发的条件,而不是以行情触发的,所以能增加一个走完k线 下单的触发机制吗?不需要一直不停的轮询
[此贴子已经被作者于2017/6/2 17:43:47编辑过]
|
-- 作者:antonyxu99 -- 发布时间:2017/6/2 18:03:13 -- 能麻烦版主给公司建议一下吗?其实非常简单,就是在buy,sell等交易函数中给我们一个 参数,能让我们在走完k线提前几秒钟下单(轮询模式中),确保能下单。 这样一个能够成交的简单要求,都要大费周折的用各种土方法来实现吗? 即便是后台程序化不间断的监控,那不也是土方法吗?我要的仅仅是走完k线下单(轮询模式下,因为止损是即时价)
[此贴子已经被作者于2017/6/2 18:04:14编辑过]
|