我正在尝试计算具有可变日期的移动平均线交叉。
我的数据库是结构化的:
id
stock_id
date
closing_price
和:
stock_id
symbol
例如,我想知道过去 X 天的平均价格是否高于过去 Z 天内 Y 天的平均价格。这些时间段中的每一个都是可变的。这需要对数据库中的每只股票(大约 3000 只股票,价格可以追溯到 100 年前)运行。
我对此有点困惑,我目前拥有的是一堆不起作用的 SQL 子查询,因为它们无法解释 X、Y 和 Z 都可以是任何值(0-N)的事实。也就是说,在过去 5 天中,我可能正在寻找 40 天平均线大于 5 或 5 > 40 的股票。或者我可能在过去 40 天中寻找 10 天移动平均线的股票是 > 30 天移动平均线。
这个问题与其他问题不同,因为有可变的短期和长期日期以及可变术语。