SPL量化工作台使用教程-2最简单的固定价策略
本文介绍了一个基于固定价格的股票买卖策略:当股价低于23元时买入,高于25.5元时卖出。文章详细说明了在量化交易系统中如何设置买入价(23元)、卖出价(25.5元)和交易数量(100股/手)等参数,并解释了交易明细查询功能。同时,对回测结果中的关键指标如占用资金、现金收益、收益率、波动率、最大回撤等进行了定义说明,包括各类手续费的计算方法。该策略通过设定固定的买卖价格点,在价格波动中获取稳定收益。
我们来尝试做一个固定价格买卖策略,策略内容是这样的:如果当日股票的最低价低于23元,就买入;反之如果股票的最高价高于25.5元,就全部卖出。然后循环进行这个步骤,看下能否赚钱。
这里我们假设,每次的买入价格为都为23元,卖出价格都为25.5元,每次买入数量为1手(100股)。
首先定义买入价格列,第一步:在添加指标下拉框中选择SPL公式,然后输出列类型选择价格,输出列名选择买价,表达式里输入23,最后点提交。

此时可以看到数据显示框中多出了买价这列:

同时在买入价格下拉框中也多出了买价选项,选择买价作为买入价格:

接着定义卖出价格列,第一步先重新点选一下添加指标下拉框,重新选择SPL公式(特别强调:即使当前已经是SPL公式了,也需要下拉点选一下,表示新建指标,否则会修改原指标),重新点选后会发现页面刷新了:

此时再选择输出列类型为价格,输出列名为卖价,表达式为25.5,点提交:

最后在卖出价格下拉框中选择卖价作为卖出价格:

买入股数和买入金额是互斥的,是指一次买入交易的股数或金额。A股市场以“手”为单位(1手=100股),买入时通常需为100股或其整数倍(如100股、200股等)。科创板(688开头)和创业板(300开头)最低200股起,可按1股递增。
我们这里以600690为例,买入股数填100,最大持仓数为空,表示只要满足买入价格就会持续买入,最后点提交:

这时候会弹出对话框:

点确定即可,因为固定价格买卖不需要买卖信号列,直接满足价格即可买卖。最后界面左侧数据显示框会出现交易明细,右侧的回测结果显示统计值,回测结果旁边显示回测时间:

持仓/买入/卖出这三列显示的数字,表示当前持仓/买入/卖出的笔数,每一笔的股数和金额取决于前面定义的买入股数/买入金额。
鼠标放到持仓/买入/卖出的数字上,会显示当前持仓或交易明细,其中股数是指这一笔交易的买入股数,买日/卖日是指这一笔交易的买入日期/卖出日期,如果这一笔股票买入后在回测区间里一直没有卖出,则卖日会显示为空。买价/卖价表示这笔股票的买入价格/卖出价格,同样的,如果没有卖掉,卖价也显示为空。买额=股数*买价+手续费,卖额=股数*卖价-手续费,这里的意思其实是,买额相当于进行这一笔交易需要花费的总金额,卖额相当于进行这一笔交易后能获得的现金额。
此时点击下一交易行/上一交易行按钮,数据会自动滚动到下一个/上一个有交易的行,并高亮显示。

这里可以看到,持仓明细里显示的卖日/卖价/卖额为空,表示当前买入的股票在回测区间没有卖掉。
界面右侧的回测结果用到了一些指标,解释如下:
占用资金:在给定时间段内完成所有交易需要投入的现金综合(包括手续费)。比如某个策略一周内的买卖资金如下表。不难算出,要完成这些交易,需要投入800元,那么该策略的占用资金就是800元。
|
买入资金 |
500 |
|
卖出资金 |
700 |
|
买入资金 |
1000 |
|
卖出资金 |
900 |
现金收益:指买卖股票所获得的价差收益,只计算已卖出的股票。例如,8块买入,买入100股,买入手续费5元;15元卖出,卖出手续费5元,那么现金收益就是15*100-5-8*100-5=690。
持仓价值:当前持有的股票价值。例如持有A股票100股,当前股价10元,那么A股票的持仓价值就是1000。
持仓收益:当前的持仓价值-持仓成本。
收益率:指收益总额与投资额的比例。收益总额包括现金收益和持仓收益。投资额就是该股票的占用资金。
买盘数:指希望购买的订单数。
赢利数:策略在给定时间段内交易次数中盈利的次数。
亏损数:策略在给定时间段内交易次数中亏损的次数。
买入资金:给定时间段内策略的总买入资金。
卖出资金:给定时间段内策略的总买入资金。
比如某个策略一周内的买卖资金如下表,那么一周内该策略的买入资金就是1500元,卖出资金是1600元。
|
买入资金 |
500 |
|
卖出资金 |
700 |
|
买入资金 |
1000 |
|
卖出资金 |
900 |
日波动率:指策略收益率在一定时间内的变动幅度,它反映了市场的不确定性和风险。波动率越高,收益率的波动越剧烈,资产收益率的不确定性就越强;波动率越低,收益率的波动越平缓,资产收益率的确定性就越强。波动率等于每日收益率的标准差。
最大回撤率:描述策略在回测期可能出现的最大亏损幅度,反映了策略的风险承受能力。最大回撤率越小,说明策略的稳定性越高,风险越低。最大回撤率等于最高收益率与之后最低收益的差值与最高收益率 +1的比值。
年化收益率:(收益率 +1)^(251/交易天数)-1。其中“^”是幂指数符号,251 是假定每年交易天数是固定的251,有时也用252,交易天数是策略开始到结束的间隔交易天数。
年化波动率:日波动率 *(251/交易天数的平方根)。
夏普率:(年化收益率 - 无风险年化收益率)/年化波动率,用来衡量策略的收益风险比。
手续费的算法不同券商可能会不同,这里采用如下公式计算:
买入手续费=max(交易金额 *交易佣金,最低佣金)+ 交易金额 *过户费
卖出手续费=max(买入金额 *交易佣金,最低佣金)+ 买入金额 *(过户费+印花税)
其中,交易佣金、最低佣金、过户费、印花税在设置里配置:


- SPL公式:常数
SPL公式中可以直接引用常数,用法和excel一致
#量化投资
更多推荐


所有评论(0)