# 设计 - 创建一个可以记录买入,卖出的量化模拟交易的 Python 软件. - 目前没有找到相关的库和包,所以一切都是从零开始学习,包括基金的一些基础知识. ## 数据库关系建模 - Fund - 基金值-时间 - Trace - 操作-时间 - 操作有买入,卖出 - 时间,操作类型,操作量(金额,股份数) - 操作的键是时间 + 操作类型: - 这里隐含的假设是,每天只能买入一次,或者卖出一次. - Gain - 收益-操作(Trace) - 每次操作都会更新收益值 - 增加 减少 不变 - Account - 账户用于绑定基金,钱包和操作 - 操作在账户上进行 - Wallet: 投资的观察差窗口 - 每个用户只能有一个钱包,用于个人总投资的计算 - 有初始金额 - Fee: 用于基金的手续费计算 - 申购费: 一般固定 - 卖出费用: 一般随时间变化 ## 数据库实现 - 本仓库个人使用,因此数据量比较少,因此采用简单的文本表示数据. - 基本确定为 pandas + csv. - 配置文件使用 yaml. ## 基金分析 ### 相似度分析 #### 基于序列特征 #### 基于统计 ## 人工智能时序预测 - [这里使用 Meta 的 Kats 包,作为后端引擎](https://github.com/facebookresearch/Kats) ## Updates ### 未来工作 - [ ] 基础的可交互性 - [ ] 基于强化学习的交易策略 - [ ] 引入 AI 时序预测 - [ ] 较为全面的投资策略 - [ ] 设定盈利率,根据盈利率建议卖出数量 ### 2024-10-11 - 更新爬虫🦎 ### 2022-11-10 - 修复 bug: 最新空数据输入错误 ### 2022-10-22 - Prophet 时序预测,看起来就不准。 - 可能预测太难了 ### 2022-10-21 - 总投资报告: `track/reports/finance.txt` ### 2022-10-18 - 卖出的池子的计算优化: `按低值出售的池子` 可以帮助决策卖出多少股票 - 一般来说,优先卖出池子里最旧的股票。 - 但是我们也给出了,优先卖出池子里价值最低的股票的结果报告。 ### 2022-10-15 - Friendly README and Docs - 增加 `sphinx` 的功能 ### 2022-10-13 - Config the buy fee rate - 已经通过 `天天基金` 的校准 ### 2022-10-12 - Read the Docs - Badges for docs and stars ### 2022-10-11 - 改善命令框提示(增加日期指示) - 修复追踪 Pandas 索引错误 ### 2022-10-10 - 尝试了 kats,出现了许多的 bug,因此放弃。 - 转用 gitstar 15k 的 [prophet](https://facebook.github.io/prophet/docs/quick_start.html#python-api) - 先学习一周 prophet ### 2022-10-9 - 完成基本系统,优化代码 - 信息收集系统 - 基金分析系统 - 基金跟踪系统 ### 2022-10-7 - 加入日志系统 - 数据库建模 1/3 ### 2022-10-5 - 能够爬取基金并分析相关的基金的信息. - 基金买入以及止盈的策略学习, 写入 latex. ### 2022-9-21 - 创建仓库,完成基本测试 ## Debugs - 中文字体修复: `bin/fix_matplotlib.py`