QuantStats จะช่วยให้คุณสร้าง Report หุ้นที่คุณชอบเพียงคำสั่งบรรทัดเดียว
การสร้างกลยุทธ์การเทรดหรือการลงทุน เราจำเป็นต้องมีการวัดค่าตัวเลขต่างๆที่สำคัญทั้ง Return ทั้ง Drawdown เพื่อมาช่วยในการตัดสินใจวางกลยุทธ์เพื่อเข้าเทรดและการลงทุนในสินทรัพย์นั้นๆ
ในโลกของ Python ช่วยให้เราสามารถทำงานได้ง่ายขึ้นเพราะมี Library เยอะมาก และวันนี้มี Library ที่น่าสนใจนั่นคือ QuantStats ที่จะช่วยให้การเทรดหรือการลงทุนมีประสิทธิภาพมากยิ่งขึ้น
ตัว Quantstat จะมีตัวเลขสำคัญอย่างเช่น Maximum Drawdown, Sharpe Ratio, Risk Return Ratio และตัวเลขอื่นๆ ที่สำคัญ
ตัวอย่าง Stats ที่ดึงได้
Quantstats จะมี 3 Modules หลักๆ ให้ใช้งานกันคือ
quantstats.stats -> สำหรับการคำนวณตัวชี้วัดประสิทธิภาพ เช่น Sharpe ratio win rate หรือ Volatility
quantstats.plots -> ใช้สำหรับทำ Visualize
quantstats.reports -> เป็นการเอา stats กับ visualize มารวมกันและทำเป็น report ตัว report จะออกมาเป็น file html (ถ้าใช้ Colab จะโหลดไม่ได้นะแนะนำให้ใช้ Jupyter หรือ VSCode)
เรามาเริ่มเขียนโค๊ดกันดีกว่า
Install Library ที่สำคัญกันก่อน
!pip install quantstats --upgrade --no-cache-dir
!pip install tabulate
import lib
import quantstats as qs
import yfinance as yf
import tabulate
ตัว QuantStats จะ extend ออกมาเป็น pandas โดยใช้คำสั่ง
qs.extend_pandas()
ในตัว QuantStats เราสามารถดึงข้อมูลหุ้นมาได้เลย
stock = qs.utils.download_returns('META')
ลักษณะการเรียกใช้งานตัวเลข stats
qs.stats.sharpe(stock)
เท่านี้ก็จะได้ Sharpe Ratio มาเลย ไม่ต้องไปคำนวณให้ปวดหัว
แต่สิ่งที่น่าตื่นเต้นกว่านั้นคือการ plot ตัวอย่างนี้จะเป็นการ plot ของหุ้น META (Facebook เก่า) การ plot จะโชว์ 3 อย่างในรูปคือ Cumulative Return, Drawdown และ Daily Return
qs.plots.snapshot(stock, title='META Performance')
แต่ถ้าอยากได้เป็น Report ฉบับเต็มก็ใช้ แต่ในส่วนนี้เราจำเป็นต้องเลือก Benchmark ของตลาดด้วย อย่างตัว META คือหุ้นสหรัฐ เราเลยใช้ Benchmark เป็น S&P
qs.reports.full(stock, "SPY")
ตัว Report ทำออกมาค่อนข้างดีเลย ลองไปเล่นกันดูนะ ข้อดีของการใช้ Python ก็แบบนี้แหละ เมื่อมันเป็น Open Source และมันฟรีเราก็สามารถเอามาใช้งานได้ และข้อดีอีกมุมนึงคือก็จะมีนักพัฒนามาช่วยสร้างพวก lib ดีๆแบบนี้มาให้เราใช้เสมอๆ
คอร์สสุดคุ้ม FullBundle ที่จะสอนให้คุณเขียน Python เพื่อการลงทุนได้อย่างมืออาชีพ https://www.facebook.com/113461060228582/posts/558330185741665/
Investic