摘要
构建交易系统是算法交易中最重要的阶段。这个阶段可以将我们的想法或学到的东西转化为实际行动。简单来说,你定义了什么时候开始交易,什么时候结束交易的规则。大多数自动交易系统通过消除人类的情绪和交易中的偏见,提供了一种优势。
建立交易体系的步骤
建立交易体系的理想方法是:
- 确定最合适的交易主题
- 制定策略草案
- 编写你的交易逻辑
- 后测和前测
- 优化结果
- 策略验证
- 实时实现
- 验证结果
目录
本文是使用回归建模构建交易系统简单模板的分步说明。
我们将在这个文章中讨论以下主题:
- 确定最合适的交易主题
- 制定策略草案
- 什么是回归分析?
- 基于滚动回归预测的交易设置
现在让我们进入建立交易系统的第一部分。
确定最合适的交易主题
有许多著名的交易方法,包括动量交易,波动率交易,平均回归交易,趋势跟随,行为交易,统计套利。
每个人都有其有利的市场状况,风险食欲,奖励。例如,由于特斯拉的股价上涨,据说这是趋势。因此,您将在此处尝试趋势策略。
在迈向交易系统开发之前,必须了解您感兴趣的领域和风险情况,以便可以接受系统的缩减。
简而言之,它是根据您在入门之前可以承受的交易风险决定的。
制定策略草案
在选择您的交易风格后,我们将找出最适合您的交易主题的策略方法。
我们有很多方法可以分析股票市场的模式。一些流行的分析方法是基于价格行为的分析、情绪分析和/或基于机器学习的建模。在匡特拉课程中详细学习价格行为交易策略。
在本文中,我们将建立一个基于回归模型的趋势跟踪系统。
什么是回归分析?
回归分析是一种监督的机器学习技术,主要用于预测金融市场中两个股票/资产之间的趋势投影和依赖性。目的是找到回归曲线,该曲线与所有数据点最不远。
回归分析中的变量
回归建模通常具有两种变量:
- 自变量:这些变量与输出变量无关
- 因变量:此变量取决于自变量
回归分析类型
有不同类型的回归分析。一些常见类型是:
- 线性回归
- 逻辑回归
- 岭回归(Ridge)
- 套索回归(Lasso)
由于我们想保持策略的简单,我们将专注于线性回归分析。
线性回归分析
线性回归可以是两种类型:
简单的线性回归:如果只有一个自变量和一个因变量,则线性回归方程是线(线性/直线),它与已知的因变量最不远。
多线性回归:如果有一个以上的自变量和一个因变量,则通过因变量的线性组合获得回归方程。
编码前先决条件
在编码之前,请确保您熟悉基本概念和Python概念,例如:
Pandas data frame和matplotlib
统计概念:
- 常规最小二乘法(建立回归模型)
- 滚动回归
金融与绩效指标:
- ROC(变更计算速率),投资组合模拟
- 计算不同指标的逻辑,例如胜率,CAGR(复合年度增长回报),回撤等。
Python 中的回归建模
我们使用 yfinance API 来获取数据。这个分析是使用小时数据完成的。
了解数据 API
我们正在使用 yahoo finance python 软件包(其他一些替代方案可能是 alpha vantage、 quandl、 anda datareader)。
主要数据如下:
- 每天的数据:下载(ticker,startdate,enddate)级别数据
- 每小时的数据:下载(ticker,startdate,enddate,period = “60m”)级别数据
示例: 我们使用的是 Nifty 50数据,从1-1-2020到20-01-2021
简单线性回归
利用常规最小二乘法建立回归模型。
回归总结
散布图
R平方是描述线性回归模型的良好度的最受欢迎的指标。通常,它想到了实际数据相对于回归线的近距离的想法。R平方值位于0到1之间,更多的R2值,拟合度更高。
开放的系数意味着开放和关闭的关系密切相关。
f统计量的概率是零假设“回归系数无显着意义”的概率。由于概率为零,因此这表明我们的自变量对于性能很重要。
到目前为止,我们已经使用最小二乘法(OLS)使用了简单的线性回归模型。该模型似乎很好,现在我们将期待在建立交易系统中扩展这些概念。
您可以尝试改进系统的方法之一是使用滚动回归的概念。
滚动回归
滚动回归是用以前的 n 根蜡烛作为参考,为每根蜡烛拟合一条回归线。这将使我们发展一种向前走的交易模式。
像移动平均线一样,滚动回归也使用了以前的 n 个蜡烛作为参考来拟合回归模型。
我们将计算滚动线性回归以进行策略模拟。
基于滚动回归预测的交易设置
该策略非常简单,计算是为了找到适合每个蜡烛(可以在任何时间框架每天,每周,每天)的回归。
我们拟合每个蜡烛的回归线(开作为自变量,闭作为前 n 个蜡烛的因变量)。
我们通过传递当前蜡烛的开盘价作为输入来预测当前蜡烛的收盘价。
- 如果预测收盘价 > 开盘价,预测价格可能上涨,我们走多。
- 如果预测的收盘价 < 开盘价,预测的价格可能下跌,我们做空。
从2020年1月1日至2020年1月1日用于模拟的漂亮1小时图表的数据。
分析摘要
请注意,滑点不包括在内。
这种策略是一种盘中策略,因为它只考虑了蜡烛的公开价格(目前的公开价格是不变的)。
我们看到,该战略在2020年1月至2021年1月期间表现良好。您可以通过按下面的下载按钮来浏览 Python 代码。
结论
在本文中,我们已经看到了基于预测的模型。线性回归的概念,当应用于同一数据集的历史数据时,被称为自回归。
自回归是各种时间序列分析模型的基础。小Q会在下一期给大家讲解。
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。