Options Profit Calculator
Hitung keuntungan dan kerugian untuk opsi call dan put saat kedaluwarsa. Menampilkan breakeven, profit maksimal, dan kerugian maksimal.
| Harga Saham | P&L |
|---|---|
| $70.00 | -$300.00 |
| $76.65 | -$300.00 |
| $83.30 | -$300.00 |
| $89.95 | -$300.00 |
| $96.60 | -$300.00 |
| $103.25 | -$300.00 |
| $109.90 | +$190.00 |
| $116.55 | +$855.00 |
| $123.20 | +$1,520.00 |
| $129.85 | +$2,185.00 |
| $136.50 | +$2,850.00 |
Untuk tujuan edukasi saja. Bukan saran keuangan.
Tentang alat ini
Kalkulator Keuntungan Opsi membantu pedagang dan investor dengan cepat menentukan hasil finansial dari posisi opsi pada saat jatuh tempo. Baik Anda menganalisis strategi pembelian atau penjualan sederhana atau mengevaluasi posisi multi-kaki yang lebih kompleks, alat ini menghitung laba dan rugi di seluruh rentang harga aset yang mendasari, menunjukkan kepada Anda dengan tepat di mana titik impas Anda berada dan berapa potensi keuntungan maksimal atau kerugian maksimal Anda.
Untuk menggunakan kalkulator, masukkan harga strike opsi, premi yang Anda bayarkan atau terima, dan harga saat ini dari aset yang mendasari pada saat jatuh tempo. Alat ini segera menampilkan laba atau rugi Anda pada titik harga tersebut, bersama dengan ambang batas kritis seperti impas, keuntungan maksimal (untuk posisi pendek), dan kerugian maksimal (untuk posisi panjang). Ini memudahkan pemahaman profil risiko-pengembalian dari setiap perdagangan opsi sebelum atau sesudah eksekusi.
Pertanyaan yang Sering Diajukan
Implementasi Kode
from dataclasses import dataclass
@dataclass
class OptionResult:
breakeven: float
max_loss: float
max_profit: float | None # None = unlimited (call)
def call_option(stock_price, strike, premium, contracts=1):
total_cost = premium * contracts * 100
breakeven = strike + premium
return OptionResult(
breakeven=breakeven,
max_loss=-total_cost,
max_profit=None, # unlimited for calls
)
def put_option(stock_price, strike, premium, contracts=1):
total_cost = premium * contracts * 100
breakeven = strike - premium
max_profit = (strike - premium) * contracts * 100
return OptionResult(
breakeven=breakeven,
max_loss=-total_cost,
max_profit=max_profit,
)
def pnl_at_expiration(option_type, strike, premium, price_at_exp, contracts=1):
"""Calculate P&L if held to expiration."""
if option_type == "call":
intrinsic = max(0, price_at_exp - strike)
else:
intrinsic = max(0, strike - price_at_exp)
return (intrinsic - premium) * contracts * 100
# Example: Buy 1 call contract
result = call_option(100, 105, 3)
print(f"Breakeven: ${result.breakeven}") # $108.0
print(f"Max loss: ${result.max_loss}") # $-300
for price in [95, 100, 105, 108, 115, 120]:
pnl = pnl_at_expiration("call", 105, 3, price)
print(f" At ${price}: P&L = ${pnl:+.2f}")Comments & Feedback
Comments are powered by Giscus. Sign in with GitHub to leave a comment.