選項

創建選項數據庫

  • August 11, 2019

我正在嘗試創建一個數據庫,該數據庫將保存各種股票期權的資訊,並且需要每天更新。這個想法是使用這個數據庫來跟踪未平倉合約的變化並將其用於交易和研究。

我每天早上都使用 powershell 從以下網站自動下載數據:http ://www.theocc.com/webapps/series-search?symbolType=U&symbol=IBM

下載的文件包含股票程式碼、行使價、到期日、看漲期權和看跌期權以及其他一些我不關心的項目。

該數據庫的目的是每天跟踪 OI 更改並創建報告。

我在數據庫設計方面沒有太多經驗,所以我不知道如何進行。最好使用哪個數據庫?MSSQL、MySQL、NoSQL 等?我想我需要上面提到的列和記錄的日期時間戳列。我在正確的軌道上嗎?

我想盡可能地自動化這個。如果那裡有已經能夠做到這一點的東西,我也可以使用它而不是重新創建輪子。我願意接受有關如何從中獲得最佳結果的建議。

謝謝

我在數據庫設計方面沒有太多經驗,所以我不知道如何進行。

閱讀介紹性數據庫書籍!

最好使用哪個數據庫?MSSQL、MySQL、NoSQL 等?

MySQL 和 Microsoft SQL Server 是遵循關係數據庫範式的數據庫管理系統。NoSQL 不是數據庫管理系統,它是一種與關係數據庫形成對比的範式。NoSQL DBMS 的範例包括 MongoDB、Redis 等。

除非您對數據庫優化有所了解,否則沒有充分的理由偏愛 MySQL、MSFT SQL Server、SQLite、kdb、Redis 或任何 DBMS。您應該使用您對學習感到滿意的東西,擁有合理的社區支持和文件,並滿足您的預算和運營要求:

  • 它是開源的嗎?
  • 是更適合 UNIX 還是 Windows 環境?

只有在做出 10^3 美元以上的成本權衡決策、考慮服務 >30(具體數字取決於您的硬體)使用者請求,或者儲存的數據多於預期時,您才應該開始擔心您使用的 DBMS適合在高度規範的台式電腦上,或者在網路、磁碟或記憶體層達到頻寬限制,因為在您開始攻擊這些類型的問題之前,DBMS 之間的差異很小。

如果您想要一個具體的答案,我實際上會推薦 MySQL 之類的東西。它很常用,有很多關於如何使用它的免費閱讀材料,並且它符合 SQL 標準,因此您可以在熟悉它後將您的知識擴展到其他 DBMS。在完全不了解關係範式的情況下使用 NoSQL DBMS 是一個壞主意,因為 NoSQL DBMS 會權衡某些功能以滿足關係 DBMS 難以服務的特定需求。但是,如果您不知道什麼是關係 DBMS,那麼您就不太可能理解這種權衡。

最初學習使用 DBMS 的人經常陷入認為最新的 DBMS 是最現代和最強大的全能型的陷阱——這是完全錯誤的。對 DBMS 的研究非常成熟,甚至 20 到 30 年的 DBMS 都經過了高度優化,適用於現代案例。經典關係型、面向行的 DBMS 架構的許多元素仍然在 NoSQL/面向列的 DBMS 設計的元素中重用。現代 DBMS 的演變並非出於超越舊 DBMS 的需要,而是出於權衡某些功能以滿足更多特定領域需求(例如 Hadoop 工作負載、數據模型靈活性、多數據中心彈性)。然後,您還會有大量新的 DBMS,它們沒有

我想我需要上面提到的列和記錄的日期時間戳列。我在正確的軌道上嗎?

不,你需要的不止這些。您應該有約束以確保數據的完整性;索引以加快查詢速度;標準化以最大程度地減少數據的冗餘,等等。您剛剛確定了數據庫中 1 個表中需要的列。

你在正確的軌道上。我也遇到過同樣的情況,你不會在那裡找到任何東西,所以我最終創建了自己的數據庫來跟踪每日股票期權。

在我的情況下,我使用 ms sql server,但您也可以使用您命名的其他伺服器。

此外,請記住,每日數據量很大,並且您的數據庫會隨著時間的推移而大幅增長。

我一直在收集所有可選股票的每日期權,數據庫的大小超過 6gb(我還保存了所有希臘字母和不同的 IV 值)

祝你好運。

引用自:https://quant.stackexchange.com/questions/24719