作者zmcx16 (zmcx16)
看板Stock
標題[心得] 用GPT分析美股選擇權估值網站
時間Sun Oct 20 01:32:14 2024
部落格完整文章:
https://blog.zmcx16.moe/2024/10/gpt-norn-stockscreener_20.html
之前寫了一篇用GPT幫忙分析整理美股公司資料, 這次想到也可以用GPT幫忙分析美股選擇
權估值, 畢竟之前做了不少美股選擇權估值的模型, 如果能把這些資料交給GPT來幫忙分
析, 或許可以在做選擇權交易之前看下分析報告, 讓GPT幫忙簡單整理買賣方建議。
關於之前寫的選擇權估值模型的文章, 有興趣的可以也可以參考下:
[網站開發] 美股選擇權定價模型 - 新增隱含波動率計算凱利公式
https://blog.zmcx16.moe/2022/08/blog-post.html
這次做好的功能如下:
https://i.imgur.com/vHvDAh4.png
Norn-StockScreener投資網站:
https://norn-stockscreener.zmcx16.moe/gpt-investing-assistant/
Github:
https://github.com/zmcx16/Norn-StockScreener
https://github.com/zmcx16/Norn-Finance-API-Server
這個頁面的功能參數如下:
* Symbol: 美股選擇權合約的股票代號
* GPT Model Name: 選要使用的GPT的model name, 預設是目前CP值最高的gpt-4o, 如果
選gpt-3.5-turbo的話產出的報告就會簡單不少, 另外也支援使用者自己輸入OpenAI其他
支援的model, 不過不一定能用, 只有ChatGPT相關的model才能跑。
* OpenAI API Key: 考慮到自己的錢包, 有想使用的人得輸入自己的OpenAI API Key, 我
想會有人擔心輸入了API Key會不會被我偷偷拿去用, 我說不會也拿不出證明, 所以真的
有想用這功能的話, 建議申請5美元免洗帳號的API Key, 或是用自己帳號新產生的key,用
完就趕緊銷毀吧~ 申請API Key可以參考這個文章:
如何免費申請ChatGPT (OpenAI) 的API Key
https://today.line.me/tw/v2/article/mWE3Ylm
* Expriation Date: 選擇權合約到期日
* Strike Price: 選擇權合約履約價
* Call / Put Option: 選擇Call or Put合約
* Valuation Data: 選擇權估值模型參數選擇, 在使用GPT模型之前, 會先用自己做的估
值模型跑估值結果, 使用者可以決定要不要讓GPT模型也參考這些估值結果, 目前總共有
以下參數:
'Black Scholes Merton EWMA Historical Volatility', 'Monte Carlo EWMA
Historical Volatility', 'Binomial Tree EWMA Historical Volatility', 'Kelly
Criterion', 'Probability of Exercise of Option', 'Delta', 'Gamma', 'Vega',
'Theta', 'Rho'
使用以上參數輸入給GPT模型的Prompt範例如下, 其中大部分的資料都是從
Norn-Finance-API-Server取得:
{{"model":"o1-preview","messages":[{"role":"user","content":"Please analyze
the option contract for the company with the symbol DIS. Provide a detailed
and comprehensive analysis, focusing on the risks—particularly the impact of
the earnings date and ex-dividend date—and valuation for both the buyer and
the seller. Your task is to thoroughly evaluate the data and generate a
report in Markdown format (No need to wrap in code blocks). Here’s the
data:\n```{option contract & valuation data}```"}]}}
至於結果就像上面demo圖看到的, 照慣例我直接Google翻譯頁面了, 比較好解釋XD:
https://i.imgur.com/zebjKh4.png
上面的資料是程式使用yfinance從Yahoo財經取得的選擇權合約資料, 包含報價資料以及
隱含波動率等等, 其中只有歷史波動率不是Yahoo財經給的, 是Norn-Finance-API-Server
用歷史股價計算出來的。
https://i.imgur.com/1Xqd87O.png
上圖的凱利公式也是Norn-Finance-API-Server透過蒙地卡羅模擬計算出來, 可以看出該
put交易用凱利公式分析對賣方有利(不過該公式只單純用歷史波動率做蒙地卡羅模擬未來
的股價變化, 並沒有考慮到消息面, 財報公布日, 除權息等等, 只能當作參考不能只看這
個參數是決定交易與否), 至於風險分析這邊感覺有些廢話, 除了行權機率也是透過程式
估算以外, 其他的文字敘述基本上看合約報價就懂的意思差不多...。
https://i.imgur.com/o1biI9g.png
分析結果該合約簡單總結對賣方有利, 其他的文字敘述一樣有些雞肋就是..., 另外來看
看, 如果選擇權履約日在財報日之後, GPT會怎麼回覆吧, DIS下次財報日是11/14, 我們
挑11/15到期, 行權價90元的迪士尼賣權合約看看:
https://i.imgur.com/GH4SPxl.png
https://i.imgur.com/Rxm22y9.png
可以看出因為是價外合約+離目前股票落差不小, 所以行權機率低(7.34%), 凱利公式算出
來也是對賣方略為有利(不過也只有0.98%, 跟不建議交易基本上也差不多了), 可是這些
公式都是透過歷史波動率計算, 如果加上考慮財報日的影響, 基本上是完全不建議做賣方
交易的, 而因為我們在GPT prompt有註明要考慮行權日以及除息日的風險, 所以有特別敘
述賣方的風險, 算是有達到我想要的警告這樣。
這次的結果感覺沒有上次的公司分析整理報告好, 給的建議大多數都是看我原本程式的數
據就能得到, 這塊我可能要再思考一下, 繼續改進prompt是否可以得到更有價值的建議.
..。
--
※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 123.192.200.34 (臺灣)
※ 文章網址: https://www.ptt.cc/bbs/Stock/M.1729359137.A.262.html
※ 編輯: zmcx16 (123.192.200.34 臺灣), 10/20/2024 01:32:59
推 zxcvbnm2010 : 看不懂好難 10/20 01:35
推 NTHUlagka : 奇怪上次那個我沒辦法用欸 會一直現實錯誤 錯誤訊 10/20 02:22
→ NTHUlagka : 息碼好像是-2 10/20 02:22
遇到error可以chrome按F12開啟瀏覽器開發者模式, 看網路封包
do-ai-option-valuation-analysis顯示的API error是什麼, 我再看看原因...。
推 hyk99885ggb : 讚讚下禮拜財報周剛好來用 10/20 02:31
推 js01078687 : 推 10/20 03:04
推 Kroner : 有人知道如何處理關節痛嗎?求分享! 10/20 12:08推 myth356 : 猛 看到暈了q 10/20 06:14
推 spike1215 : 好猛啊 10/20 08:10
推 weightisjoke: 推 讚啦 10/20 08:18
推 sirins : 先推怕別人發現我看不懂 10/20 08:34
推 Kroner : UC2是天然成分嗎?還是有添加物啊? 10/20 15:53推 cosmos506 : 太難 直接買美債 10/20 08:37
推 freshman : 完全不懂 字數夠多 先給推 10/20 08:49
推 y800122155 : 你這個有利不有利是以套利的角度吧? 如果對標的未 10/20 08:55
→ y800122155 : 來的走向有把握,那即便不利,也應該買入,或不該反 10/20 08:55
推 Kroner : 吃過關節保健品,都沒什麼效果,有推薦的牌子嗎? 10/20 22:34→ y800122155 : 而賣空 10/20 08:55
有利不利主要是看估值模型的理論價跟市場價的溢價差, 因為使用的估值模型主要都是以
歷史波動率計算, 沒有辦法考慮未來消息面等狀況, 所以終究只能當一個參考而已。
推 limulus : 餵給AI的數據越多,有助於提高參考價值。但我認為 10/20 08:55
→ limulus : 最大的不確定/無法預測的因子就是人心,所以即使A 10/20 08:55
→ limulus : I再強大,還是抵不過川普一句話XD 10/20 08:55
推 Chricey : 看到關節痛,我就想起我姨媽 10/20 22:34→ y800122155 : 或者換個角度來看,當某個方向一直處於不利,可能代 10/20 08:57
→ y800122155 : 表市場已經倒向某一邊而造成價格偏離 10/20 08:57
推 yesyesyesyes: 以前碩一有做過,參考度不大,而且這個模型很久了吧 10/20 09:52
→ appledick : AI很適合即時的大型對沖基金操作 10/20 09:59
推 Chricey : 本魯關節痛始祖,葡萄糖胺保證沒用,乖乖吃UC2吧 10/20 09:59 推 bnn : 你的網站很好用 10/20 10:28
推 mike8469 : 推推 10/20 10:40
推 danielking : 推推 10/20 10:42
推 ETTom : 有夠專業 推 10/20 12:08
推 Kroner : 不動對關節最好,拎北都躺著 10/20 12:08 推 staytuned74 : 有趣,請問前端用什麼寫的,最近也想搞個網站想用 10/20 12:14
→ staytuned74 : streamlit 來寫 10/20 12:14
前端是用React寫的, UI框架則是用MUI, MUI真的超方便, 不然要我自己搞這些UI元件我
是真不行, 本身專業是後端, 前端完全是土法煉鋼自己亂學的XD
推 kido183 : 感謝高手分享 推 10/20 13:52
※ 編輯: zmcx16 (123.192.200.34 臺灣), 10/20/2024 14:57:22
推 CMeru : 請他抓趨勢或做數據統計可能會比較好嗎,給的建議 10/20 15:53
推 Chricey : 本魯關節痛始祖,葡萄糖胺保證沒用,乖乖吃UC2吧 10/20 15:53 → CMeru : 有點危險,沒考慮太多 10/20 15:53
推 staytuned74 : 推! 10/20 16:17
推 a384331 : 可以做台股的嗎? 很好用 10/20 16:49
推 y800122155 : 問下 你用歷史波動率會比隱含波動率好嗎? 或者說, 10/20 22:34
推 Chricey : 關節痛有人有有效的復健方法嗎? 10/20 22:34 → y800122155 : 你可能也沒有辦法去區分到底是 "歷史波動率已經不具 10/20 22:34
→ y800122155 : 代表性" 或是 "隱含波動率是來自不合理的市價" 對嗎 10/20 22:34
→ y800122155 : ? 你所做的就是以歷史波動率當標準,去計算最新的市 10/20 22:34
→ y800122155 : 價是否與之相符? 10/20 22:34
推 Chricey : 關節痛睡覺就能治了,吃什麼UC2 10/20 22:34 估值模型都是用歷史波動率計算的, 畢竟隱含波動率是靠市價本身反推回去的, 拿來用作
估值模型計算溢價差就沒意義了, 而凱利公式是用蒙地卡羅模擬, 就有分別用歷史跟隱含
波動率分別做計算, 至於歷史波動性跟隱含波動性哪個有代表性我沒辦法區分沒錯, 我的
作法就是盡可能計算各種溢折價/勝率差, 在簡單投票或分析看適不適合交易這樣。
※ 編輯: zmcx16 (223.137.146.17 臺灣), 10/21/2024 00:54:41