2017年12月16日 星期六

AxisTradeCult 開發日誌 (2)

這兩個禮拜的進度主要如下:

  1. 加入Overview頁面的清單滾軸
  2. 完成觀看股票走勢圖的功能
  3. 實作MA均線, 布林通道技術指標功能, 完成技術指標的框架




這兩周的心得嘛...我完全沒想到Qt的滾軸功能可以搞我一個禮拜, 卡關的主要原因在於我並不瞭解Qt的layout本質 (嘛...現在也還是霧裡看花~),  因為我一直把Layout單純作為管理各widget的容器, 可是Layout除了管理各widget之外, 最主要的功能還是Layout~~(這不是廢話嗎!!)。


所以說, 當我把Layout純粹當作各widget的容器時, 每個widget的大小, 絕對位置等等都是我之前用Qt designer布置好的, 可是如果我要使用Qt的ScrollArea, 我就必須把存放各widget的layout設置在一個widget上才能佈署到ScrollArea, 而那個瞬間Qt的layout就會展現他的能力, 幫你重新用該layout的特性整個重佈署大小位置~你之前佈署好的設定就全部跑掉了...。


知道原因後解決方法很簡單, 我自己想手動配置位置的widget我就配置好放在一個大widget裡面(open, close, ...各個小column), 而想交由layout簡易佈署的部分則為各個大Widget(每個row), 這樣就能達到我要的效果了。 (也是我自己龜毛, 有些地方就是想自己手動佈署, 不想全部交給layout幫我排版...)


會卡很久主要是因為程式整個crash所以才沒發現是layout的問題, 因為整個畫面原本預設是row(m)*col(n), 而我一開始想用一個vboxlayout管理所有小widget, 所以當他把我的佈署設定重置掉後就變成row(1) * col(m*n), 可能是超出解析度太誇張才整個crash, 我當然也不會知道是layout造成的...。


完成滾軸功能後, 再來就是基本的走勢圖, 這塊由於有十分強大的matplotlib可用, 加上網路教學資源非常多, 很簡單的就畫出我想要的圖, 不過又花了一堆時間微調到我滿意為止XD, 像是X軸的主分布是以每個星期一, 而不是固定的offset, 過濾掉非交易日等等~。


目前完成的功能如下:
  • 程式自動取得關注個股的歷史資訊 (每日的開盤, 收盤, 最低, 最高, 成交量, 調整收盤價, etc...) [資料來源: Quandl]
  • Stocks Overview頁面 (可新增, 移除個股至群組, 可依選擇時間顯示個股資料, 也會計算該天前3個月平均價&成交量以及一年成交價區間)
  • 各種技術分析線圖組合分析 (MA, KD, RSI, MACD...) ---進行中
待完成項目:
  1. 各種技術分析線圖組合分析 (MA, KD, RSI, MACD...)
  2. 投資組合頁面
  3. 提供機器學習模型預測
    • 自動取得、生成個股的基底、衍生特徵
    • 支援各類機器學習算法
    • 提供回歸測試模型預測率以及調適最佳參數
    • 提供增強式學習進行策略模擬

其實應該先快速完成基本功能在來慢慢完善才是, 現在就是自己太龜毛所以進度緩慢...
嘛~反正有幹勁最重要, 就先順著自己的奇檬子來做吧~~。

2 則留言:

  1. 不明但覺厲,先○| ̄|_ 一下
    ---------------
    題外話,沒看Re:zero
    雷姆不是長期沉睡嗎?給作者封印會讓雷姆股變壁紙的,小心小心。

    回覆刪除
    回覆
    1. 身為雷姆教教徒的我對這件事萬般無奈啊!!!

      刪除