交易手数的计算方法

[复制链接]
查看822 | 回复4 | 张孟珂 | 2020-5-30 19:12:05 | 显示全部楼层 |阅读模式
我们在研究交易模型时,定义好开平仓条件后,就是开平仓的手数计算。

手数计算公式
FUND:=10000000; //定义初始资金
LOTS:=INTPART(FUND*0.4/(CLOSE*MARGIN*UNIT+FEE));// 计算开仓手数

在上述计算公式中,每一根k线上的收盘价是会对计算出来的手数有所影响,那就是说会影响到开平仓的手数,出现仓位并不能完全平掉的情况,具体测试内容我们在下面楼层中详细说明。

回复

使用道具 举报

张孟珂 | 2020-5-30 19:19:37 | 显示全部楼层
我们今天的测试结果是基于MACD指标在上证指数的。测试内容有:

1)  测试一条件:MACD金叉,买入;死叉卖出;开平仓的手数直接使用LOTS;
2)  测试二条件:MACD金叉,买入;死叉卖出;开平仓的手数使用LOTS、BKVOL、SKVOL去定义的中间变量;
回复

使用道具 举报

张孟珂 | 2020-5-30 19:20:23 | 显示全部楼层
一、测试内容说明
1)  测试一条件:MACD金叉,买入;死叉卖出;开平仓的手数直接使用LOTS;

测试代码
DIFF : EMA(CLOSE,SHORT) - EMA(CLOSE,LONG);// 短周期与长周期的收盘价的指数平滑移动平均值做差。
DEA  : EMA(DIFF,M);// DIFF的M个周期指数平滑移动平均
2*(DIFF-DEA),COLORSTICK;// DIFF减DEA的2倍画柱状线
//仓位计算
FUND:=10000000; //资金
LOTS:=INTPART(FUND*0.4/(C*MARGIN*UNIT+FEE));// 计算开仓手数
CROSSUP(DIFF,DEA),BPK(LOTS);//做多信号
CROSSDOWN(DIFF,DEA),SPK(LOTS);//做空信号

【交易明细说明】

交易手数A.png

2)  测试二条件:MACD金叉,买入;死叉卖出;开平仓的手数使用LOTS、BKVOL、SKVOL去定义的中间变量;

测试代码
DIFF : EMA(CLOSE,SHORT) - EMA(CLOSE,LONG);// 短周期与长周期的收盘价的指数平滑移动平均值做差。
DEA  : EMA(DIFF,M);// DIFF的M个周期指数平滑移动平均
2*(DIFF-DEA),COLORSTICK;// DIFF减DEA的2倍画柱状线
//仓位计算
FUND:=10000000; //资金
LOTS:=INTPART(FUND*0.4/(C*MARGIN*UNIT+FEE));// 计算开仓手数
//手数计算
// 1、设置一个头寸值,头寸是LOTS和BKVOL之间取最大值,或者在LOTS和SKVOL取最大值;
// BKTC:在LOTS和SKVOL之间取最大值;
BKTC : MAX(LOTS, SKVOL);//反手做多的手数
// SKTC:在LOTS和BKVOL之间取最大值;
SKTC : MAX(LOTS, BKVOL);//反手做空的手数
CROSSUP(DIFF,DEA),BPK(BKTC);//做多信号
CROSSDOWN(DIFF,DEA),SPK(SKTC);//做空信号

【交易明细说明】
交易手数B.png


【测试一、测试二对比】

交易手数-测试对比.png

二、测试小结
1、从测试一的测试报告中可以看出来,指令个数和信号格式是350次,但是交易次数只有59次,很明显是不正常的;从交易明细中可以看出来,平仓手数是和开仓手数是不相等的;
2、我们改变手数计算方法后,测试二报告中的交易次数有175次,同时交易明细中开仓手数和平仓手数都是相等的;因此在后面的模型研究中均可以使用测试二中的手数计算方法。

回复

使用道具 举报

西瓜 | 2020-6-1 23:47:24 | 显示全部楼层
// 1、设置一个头寸值,头寸是LOTS和BKVOL之间取最大值,或者在LOTS和SKVOL取最大值;
// BKTC:在LOTS和SKVOL之间取最大值;
BKTC : MAX(LOTS, SKVOL);//反手做多的手数
// SKTC:在LOTS和BKVOL之间取最大值;
SKTC : MAX(LOTS, BKVOL);//反手做空的手数
CROSSUP(DIFF,DEA),BPK(BKTC);//做多信号
CROSSDOWN(DIFF,DEA),SPK(SKTC);//做空信


这里的逻辑理能说说吗?
回复

使用道具 举报

张孟珂 | 2020-6-2 09:47:58 | 显示全部楼层
1、先说明:在LOTS 的计算公式中,用到了当根k线上的收盘价,所以LOTS 这个值是在不停变化的,如果首次开仓100手,持仓量就是100手;但是在反手条件触发时,你反手时计算出来的LOTS 值要比实际持仓量BKVOL 或者SKVOL 大或者小;
2、因此我们先设置一个中间变量 BKTC / SKTC;
3、如果现在是持多头仓位,那SKTC 就在LOTS 和BKVOL 两个值中间取最大值,这个最大值就是我们要反手做空或者平掉的仓位,否则会有仓位没有全部平掉。


回复

使用道具 举报

高级模式
B Color Image Link Quote Code Smilies |上传

本版积分规则

媒体报道
72小时量化入门实战篇
刘昱妗72小时量化入门实战篇
72小时量化入门实战篇
F1-Score、精确率(Precision)和召回率(Recall)
桥博士F1-Score、精确率(Precision)和召回率(Recall)
这三个指标听起来很学术,但如果放在炒股里,其实就是衡量你的“交易系统”或者“
为什么期权高手都劝你卖期权而不是买?
桥博士为什么期权高手都劝你卖期权而不是买?
大家好,我是期权daley,欢迎来到期权进阶指南系列。今天我要讲一个可能颠覆你认
【量化实战】如何用QR相对强弱值,在轮动市中抓住真强势股?
宇晨【量化实战】如何用QR相对强弱值,在轮动市中抓住真强势股?
最近市场板块轮动加快,很多朋友都遇到了一个共同的问题:“为什么我买的股票在涨,但
伟大的100个宽论种子门徒
admin伟大的100个宽论种子门徒
凭什么我们中国人不能有自己的量化理论?缠论很伟大,宽论也不差! 现在我们公开征召
多智能体对抗-从梦想到现实
桥博士多智能体对抗-从梦想到现实
第一阶段 2024年暑假开始,到2026年寒假,才开始收尾,团队工作逐渐减少,短期内也不
海龟交易法则(2026新版)
admin海龟交易法则(2026新版)
**** 本内容购买后可见 ****
AI问板块测试-5月5日凌晨
桥博士AI问板块测试-5月5日凌晨
海湾刚刚开打,预测一下后天到行情
相关课程推荐
K线形态组合解析
k线图基础知识怎么学? 报名宽论VA鱼识别课
没有人可以做万能交易者,但通过不断学习吸收知识从而有一套属于自己交易系统的人,就是走向了盈利的大道。
90%的时间在研究大盘指数,9.9元学习宽论VA
一买就跌,一卖就涨? 股市七亏二平一赚,怎样才能成为赚钱的10%? 看准大盘胜算过半,炒股新手也能掌握的V

43

主题

192

回帖

799

积分

宽论高级会员

积分
799
  • 官方论坛

    提供最新 Discuz! 产品新闻、软件下载与技术交流