python - 一起使用加密和股票 OHLCV 数据。如何处理非交易缺口以避免指数和指标问题?
问题描述
您好交易和编程专家!
我需要您在同一策略中使用股票数据和加密数据方面的专业知识。我对非交易时间的差距有疑问。假设我们处于每日时间范围内(为了简单起见,希望它也能在日内工作):
monday = close_crypto[1]
tuesday = close_crypto[2]
wednesday = close_crypto[3]
thursday = close_crypto[4]
friday= close_crypto[5]
saturday = close_crypto[6]
sunday = close_crypto[7]
monday = close_stocks[1]
tuesday = close_stocks[2]
wednesday = close_stocks[3]
thursday = close_stocks[4]
friday= close_stocks[5]
saturday = close_stocks[6] # not available = np.nan
sunday = close_stocks[7] # not available = np.nan
self.index == 6
我们开始遇到问题。我们不能把它留空(去掉NaN
s),因为这样索引就不再与日期匹配了。例如self.index == 6
,加密蜡烛是 2020 年 10 月 17 日,股票蜡烛是 2020 年 10 月 19 日。
如果我们np.nan
再次将其设置为索引匹配,但计算平均值之类的指标不适用于数组。如果我们将“缺失”蜡烛设置为最后存在的蜡烛值(= 前向填充),我们会得到不同/错误的指标值。
你怎么处理?我现在的想法是:
- 前向填充 stock_data,但保留旧数组用于指标计算:stock_data_with_nan
- 对于股票的指标计算,我需要一个助手,它使用 stock_data_with_nan,但在计算中跳过 np.nan,然后返回前向填充的指标数据。
你觉得呢?你有没有什么想法?对于不连续序列辅助函数,我还需要一些 NumPy 专家的帮助。
想过这样的事情:
discontinuous_series_helper(lambda series: ta.sma(series, 20), close_stocks_with_NaN)
谢谢大家!
解决方案
推荐阅读
- jquery - 使用 jQuery 验证上传中的文件大小
- php - 在基于 Web 的开发环境中使用 GIT 源代码控制
- colors - 更改窗口的边框颜色
- javascript - 在点击事件上增加 .style.transformX
- sql - 如何选择当前用户参与的所有关系?ASP.NET SQL 服务器
- opengl - glUniformLocation 数组
- python-3.x - PubNub 订阅错误
- javascript - 如何在 ReactJS 中从 JSON 文件创建选项标签列表
- android - 关于 Android Studio 中的 Build.Gradle 要问的一件事
- html - CSS动画自定义属性/变量