- 深入浅出Python量化交易实战
- 段小手
- 479字
- 2022-07-29 16:01:39
2.3.2 根据交易信号和仓位进行下单
下面我们就根据生成的交易信号来下单。需要说明的是,当程序给出交易信号时,还要结合仓位来判断:当交易信号为“买入”且空仓时,我们才会下买入订单;而交易信号为“卖出”且有持仓股票时,我们才会下卖出订单。输入代码如下:
![](https://epubservercos.yuewen.com/BB339E/23721615909510506/epubprivate/OEBPS/Images/Figure-P43_139383.jpg?sign=1739601139-FUpulxtNN66wSGJ7liKPX4LdaIvj6TtR-0-839015efda59164fca7947fc1361e4a0)
运行代码,可以得到如表2.7所示的结果。
表2.7 根据交易信号和仓位进行下单
![](https://epubservercos.yuewen.com/BB339E/23721615909510506/epubprivate/OEBPS/Images/Figure-T44_139230.jpg?sign=1739601139-23cVSlzOZHoTzp8wjuRCohR3uXxOo3bM-0-7b164b5b46a58bba88f0efe99c6a3cc8)
【结果分析】仔细观察表2.7,大家会发现:在3月4日这一天,程序下了买入单;而在3月9日,程序下了卖出单。如果读者朋友得到了类似表2.7的结果,说明成功地根据交易信号和仓位生成了买卖订单。
为了方便观察,我们也可以用可视化的方式来进行下单的展示。输入代码如下:
![](https://epubservercos.yuewen.com/BB339E/23721615909510506/epubprivate/OEBPS/Images/Figure-P44_139385.jpg?sign=1739601139-P7gMLnSSevFUoWtMACf4sN9SqO1iJ0iH-0-1c6e8f4039dc7b74d17c48ec6b986d2b)
运行代码,可以得到如图2.5所示的结果。
![](https://epubservercos.yuewen.com/BB339E/23721615909510506/epubprivate/OEBPS/Images/Figure-P45_139233.jpg?sign=1739601139-X05ogHleZUCkQA44mRF9kfzhMZR42Cv3-0-5d386559288e8ec84a11fa0f8e207387)
图2.5 使用海龟策略生成的订单
【结果分析】在图2.5中,实线部分体现的是该股每日的价格,两条虚线分别对应唐奇安通道的上沿和下沿。我们仔细观察会发现,当股价第一次突破唐奇安通道上沿时,程序进行了买入,但随后的几天中,股价再次突破了上沿,但由于此时已经有1手持仓,故没有再次买入。之后股价急转直下,突破了通道下沿,程序下单卖出。依次类推,在选定的时间范围内,程序进行了6笔交易。