sql - 根据 hte 库存计算每个新日期的平均成本价格
问题描述
我正在尝试在 Access 中创建一个查询,以计算所有记录的另一个查询的平均成本价格,该查询包含一系列日期的多只股票买卖。
T0 中的平均成本价格公式为:((累积仓位 T-1 * 平均成本 Px T-1) + 数量 T0* 价格 T0)/ (累积仓位 T-1+ 数量 T0)
如果记录是卖出,我只是减去累积头寸的数量并保持平均成本
我不能使用子查询,因为我必须在同一列上为同一查询获取记录,所以它是不可能的。我实际上对如何做到这一点感到迷茫,因为我有大约 30.000 条股票交易记录,我需要每个日期的平均成本价。处理这种情况的最佳途径是什么?
SELECT qry_sample_data_excel_summ.Date, qry_sample_data_excel_summ.Ticker, qry_sample_data_excel_summ.buy_sell, qry_sample_data_excel_summ.SumOfQuantity AS Qtty, qry_sample_data_excel_summ.AvPrice AS Price, (SELECT Sum(Dupe.SumOfQuantity)
FROM qry_sample_data_excel_summ AS Dupe
WHERE ((Dupe.Date)<qry_sample_data_excel_summ.Date) AND ((Dupe.Ticker)=qry_sample_data_excel_summ.Ticker)) AS [Acumm_Position T-1], "?" AS Av_Cost_Px
FROM qry_sample_data_excel_summ
GROUP BY qry_sample_data_excel_summ.Date, qry_sample_data_excel_summ.Ticker, qry_sample_data_excel_summ.buy_sell, qry_sample_data_excel_summ.SumOfQuantity, qry_sample_data_excel_summ.AvPrice, "?";
<table><tbody><tr><th>Date</th><th>Ticker</th><th>buy_sell</th><th>Qtty</th><th>Price</th><th>Acumm_Position T-1</th><th>Av_Cost_Px</th></tr><tr><td>2-Jan-20</td><td>BA</td><td>B</td><td>17,000</td><td>333.00</td><td> </td><td>333.00</td></tr><tr><td>2-Jan-20</td><td>BA</td><td>S</td><td>(5,000)</td><td>332.36</td><td> </td><td>333.00</td></tr><tr><td>2-Jan-20</td><td>KHC</td><td>B</td><td>4,000</td><td>31.64</td><td> </td><td>31.64</td></tr><tr><td>3-Jan-20</td><td>BA</td><td>B</td><td>1,000</td><td>330.53</td><td>12,000</td><td>332.81</td></tr><tr><td>3-Jan-20</td><td>BA</td><td>S</td><td>(2,000)</td><td>333.74</td><td>12,000</td><td>332.81</td></tr><tr><td>6-Jan-20</td><td>BA</td><td>B</td><td>1,000</td><td>328.32</td><td>11,000</td><td>332.44</td></tr><tr><td>6-Jan-20</td><td>BA</td><td>S</td><td>(7,000)</td><td>334.45</td><td>11,000</td><td>332.44</td></tr><tr><td>6-Jan-20</td><td>KHC</td><td>B</td><td>4,000</td><td>31.09</td><td>4,000</td><td>31.37</td></tr><tr><td>7-Jan-20</td><td>BA</td><td>S</td><td>(5,000)</td><td>341.56</td><td>5,000</td><td>324.83</td></tr></tbody></table>
解决方案
推荐阅读
- vba - 点击命令按钮(保存、打印或发送)时文本表单字段的不需要的重置
- titanium - 在本机应用程序中访问“Titanium.App.Properties”
- python - kivy - TypeError:描述符“属性”需要一个“kivy._event.EventDispatcher”对象,但收到一个“method_descriptor”
- c# - 如何在不更改/添加构造函数的情况下使用依赖注入
- html - 使框的大小与包装内容相同
- excel - Excel - 将 3 个 if 语句合二为一,每个语句都需要满足多个条件?
- jquery - 如何使用 replace() 在 Jquery 之前删除逗号和字符串?
- react-native - 使用 iOS Accessibility Inspector 检索到的 ReactNative 的 `accessibilityLabel` 和 iOS Label 是否相同?
- javascript - Javascript 库不适用于 React Native 发布版本
- postgresql - 如何选择不符合排除约束的行