以文本方式查看主题 - 金字塔客服中心 - 专业程序化交易软件提供商 (http://222.73.7.161/bbs/index.asp) -- 公式模型编写问题提交 (http://222.73.7.161/bbs/list.asp?boardid=4) ---- [原创]连续追单怎么写? (http://222.73.7.161/bbs/dispbbs.asp?boardid=4&id=2414) |
|
-- 作者:影无月 -- 发布时间:2010/8/9 19:08:46 -- [原创]连续追单怎么写? 恳请请版主帮忙,连续追单怎么写,目的是为了有时候市场价追单不能成交,必须连续追单 IF A AND TBUYHOLDING<LOT THEN BEGIN
???????? END //每隔T秒以市场价开多追价下单 LOT- TBUYHOLDING 手,当 TBUYHOLDING=LOT 时,追价结束 [此贴子已经被作者于2010-8-9 19:23:41编辑过]
|
|
-- 作者:admin -- 发布时间:2010/8/9 22:24:09 -- A:=....;//条件 LOT:=100;//开仓手数 T:=3;//追仓间隔时间 IF A AND TBUYHOLDING<LOT THEN BEGIN
???????? 打这么问号干嘛,这里开仓啊! TBUY(1,LOT-TBUYHOLDING ,MKT); END |
|
-- 作者:影无月 -- 发布时间:2010/8/10 4:49:25 -- TBUY(1,LOT-TBUYHOLDING ,MKT);有时不能成交,所以需要追单,直到完全成交。如果采用TBUY(1,LOT-TBUYHOLDING ,MKT),ALLOWREPEAT;高频交易时,又会由于TBUYHOLDING 来不及返回而产生实际开仓手数大于开仓手数的问题。我需要的是当条件A满足时候,立即市场价买入,T秒后如果出现TBUYHOLDING<LOT ,那么每隔时间T发出一个市场价买入信号,直到TBUYHOLDING=LOT 结束 |
|
-- 作者:影无月 -- 发布时间:2010/8/10 8:06:20 --
if a then begin REPEAT sleep(T); tbuyholding(1)>=lot or NOT(A); end |
|
-- 作者:wattwei -- 发布时间:2010/8/10 8:41:34 -- 帮助文档写有:当位于最后一个周期时,延时指定数量时间后再执行下条语句。 用法:SLEEP(D),D为延时的设置时间,单位为毫秒(1秒钟等于1000毫秒)。 例如:SLEEP(1000)表示等待1秒后再执行下行语句。 所属函数组:后台程式化交易 不知系统最小响应时间是多少,楼上的T设为等于3,3毫秒查询一次。有些系统对无赖查询好像有时间间隔,不懂同问 |
|
-- 作者:wattwei -- 发布时间:2010/8/10 8:47:56 -- 另外,程序中是否还应该考虑到撤单?存在资金不够,开不出仓的可能 |
|
-- 作者:影无月 -- 发布时间:2010/8/10 9:41:31 -- 我不知道该怎么实现我的想法,请帮忙写一下。T应该可以修改,改为5000, [此贴子已经被作者于2010-8-10 9:45:16编辑过]
|