Rss & SiteMap

金字塔客服中心 - 专业程序化交易软件提供商 http://www.weistock.com/bbs/

专业程序化软件提供商
共19 条记录, 每页显示 10 条, 页签: [1] [2]
[浏览完整版]

标题:重复下单

1楼
shengweis 发表于:2018/7/27 15:35:44

老师,您好,

 

帮看一下为什么出现同一位置重复下单,而策略持仓数量不变?

 

Input:A(3500,1,25000,1), ZY(20,1,10000,1),qty(1,1,100,1),KCJC(15,1,10000,1);

 
ccs:=abs(holding);
 
if ABS(HOLDING)=0 and CLOSE>A THEN BUYSHORT (1,qty,LIMITR,CLOSE-10),IGNORECHECKPRICE;

if ABS(HOLDING)=1*qty and CLOSE>A+1*KCJC THEN BUYSHORT (1,qty,LIMITR,CLOSE-10),IGNORECHECKPRICE;
if ABS(HOLDING)=2*qty and CLOSE>A+2*KCJC THEN BUYSHORT (1,qty,LIMITR,CLOSE-10),IGNORECHECKPRICE;
if ABS(HOLDING)=3*qty and CLOSE>A+3*KCJC THEN BUYSHORT (1,qty,LIMITR,CLOSE-10),IGNORECHECKPRICE;
if ABS(HOLDING)=4*qty and CLOSE>A+4*KCJC THEN BUYSHORT (1,qty,LIMITR,CLOSE-10),IGNORECHECKPRICE;
if ABS(HOLDING)=5*qty and CLOSE>A+5*KCJC THEN BUYSHORT (1,qty,LIMITR,CLOSE-10),IGNORECHECKPRICE;
if ABS(HOLDING)=6*qty and CLOSE>A+6*KCJC THEN BUYSHORT (1,qty,LIMITR,CLOSE-10),IGNORECHECKPRICE;
if ABS(HOLDING)=7*qty and CLOSE>A+7*KCJC THEN BUYSHORT (1,qty,LIMITR,CLOSE-10),IGNORECHECKPRICE;

 

CCS2:=ABS(HOLDING)/qty-1;
 For W1=0 To CCS2 do 
 BEGIN
 F1:=A+W1*KCJC-ZY;
 If Close<F1 AND DAYHOLDING=0 THEN SELLSHORT (1,qty,LIMITR,CLOSE+10),IGNORECHECKPRICE;
 end

持仓:holding,linethick0;
资产:asset,noaxis;
可用现金:cash(0),linethick0;

 

2楼
banzhuan 发表于:2018/7/27 15:40:45
提供一下重复下单那时候的日志,或者直接上传一下完整日志
3楼
shengweis 发表于:2018/7/27 15:44:58
 下载信息  [文件大小:   下载次数: ]
图片点击可在新窗口打开查看点击浏览该文件:pleaceorder.txt

4楼
shengweis 发表于:2018/7/27 15:46:06
上传了,看得到吗?
5楼
banzhuan 发表于:2018/7/27 15:55:15
上述日志是从14:18分开始的,您具体是哪个时间点重复下单的呢? 或者您直接把OrderLog文件夹压缩了上传
6楼
shengweis 发表于:2018/7/27 16:10:03
这个日志是对的,是9:00, 9:03,9:10这三个时间点,谢谢
 下载信息  [文件大小:   下载次数: ]
图片点击可在新窗口打开查看点击浏览该文件:pleaceorder.txt2018-07-27 09#35#46.txt

7楼
banzhuan 发表于:2018/7/27 16:24:58
您是指策略信号触发了多次,而实际只下单了一次是吧?   您的运行周期是什么呢? 
图表程序化的机制是:在同一根K线上,一句BUY(sell)语句只能下单一次,不会重复触发的,用for循环也不行的
[此贴子已经被作者于2018/7/27 16:26:34编辑过]
8楼
shengweis 发表于:2018/7/27 17:57:14
信号触发一次,但下单了三次,运行周期是一分钟,我也认为只应该下单一次才对,结果多下了两次,而且,策略的持仓数还没计入后面多出来的两张单子
9楼
banzhuan 发表于:2018/7/30 8:45:52
根据日志记录的信号有触发了3次,也委托下单了3次;该现象可能是信号闪烁造成的,信号在盘中满足条件并触发了信号,然后又消失了;
您说的策略持仓数是holding吧? 从历史K上去查看只有1次信号,但盘中的确是满足了3次条件,触发了开仓指令。您的代码中是否有跨周期引用呢?
10楼
shengweis 发表于:2018/7/30 10:23:27
没有引用别的周期,奇怪的是多出来的那两个开仓还不改变持仓数量。我的代码就贴在上面,很简单的,但持仓数量每次提取会影响计算
共19 条记录, 每页显示 10 条, 页签: [1] [2]


Powered By Dvbbs Version 8.3.0
Processed in 0.05078 s, 4 queries.