เริ่มต้นใช้งานเริ่มต้นใช้งานได้ฟรี

ประเมินผลตอบแทน

ลองดูกันว่าพอร์ตโฟลิโอที่เราเลือกจะให้ผลลัพธ์เป็นอย่างไรเมื่อเทียบกับการลงทุนใน SPY โดยตรง เพื่อตรวจสอบว่าการพยากรณ์ของเรามีแนวโน้มที่ดีหรือไม่ แม้ว่าค่า R\(^2\) จะต่ำก็ตาม

เราจะกำหนดมูลค่าเริ่มต้นของการลงทุนที่ $1,000 จากนั้นวนลูปผ่านผลตอบแทนจากการพยากรณ์และจาก SPY โดยใช้ผลตอบแทนรายเดือนจากพอร์ตโฟลิโอและ SPY มาปรับใช้กับยอดเงินเริ่มต้น วิธีนี้จะทำให้เห็นภาพการเติบโตของเงินลงทุนในแต่ละเดือน และเปรียบเทียบผลลัพธ์โดยรวมของการพยากรณ์กับ SPY จากนั้นจึงพล็อตกราฟพอร์ตโฟลิโอจากการพยากรณ์เพื่อเปรียบเทียบกับ SPY

แบบฝึกหัดนี้เป็นส่วนหนึ่งของหลักสูตร

Machine Learning สำหรับการเงินด้วย Python

ดูคอร์ส

คำแนะนำการฝึกหัด

  • กำหนดค่าแรกของทั้ง algo_cash และ spy_cash ให้เท่ากับจำนวนเงินเดียวกัน (cash)
  • คูณ cash ในลูป test_returns ด้วย 1 + r เพื่อนำผลตอบแทนมาปรับกับ cash
  • ทำแบบเดียวกับลูป test_returns โดยในลูปประสิทธิภาพของ SPY ให้เพิ่ม cash เข้าไปใน spy_cash หลังจากคูณด้วย 1 + r เพื่อนำผลตอบแทนมาปรับกับ cash

แบบฝึกหัดเชิงโต้ตอบแบบลงมือทำ

ลองทำแบบฝึกหัดนี้โดยเติมโค้ดตัวอย่างนี้ให้สมบูรณ์

# Calculate the effect of our portfolio selection on a hypothetical $1k investment
cash = 1000
algo_cash, spy_cash = [cash], ____  # set equal starting cash amounts
for r in test_returns:
    cash *= 1 + r
    algo_cash.append(cash)

# Calculate performance for SPY
cash = 1000  # reset cash amount
for r in returns_monthly['SPY'].iloc[train_size:]:
    cash ____ ____
    ____

print('algo returns:', (algo_cash[-1] - algo_cash[0]) / algo_cash[0])
print('SPY returns:', (spy_cash[-1] - spy_cash[0]) / spy_cash[0])
แก้ไขและรันโค้ด