<?php
header('Content-Type: application/json');

// Eingaben abholen
$capital     = isset($_POST['capital']) ? (float)$_POST['capital'] : 0;
$riskPercent = isset($_POST['risk_percent']) ? (float)$_POST['risk_percent'] : 0;
$direction   = isset($_POST['direction']) ? strtolower(trim($_POST['direction'])) : 'long';
$entryPrice  = isset($_POST['entry_price']) ? (float)$_POST['entry_price'] : 0;
$volatility  = isset($_POST['volatility']) ? (float)$_POST['volatility'] : 0;

// Wenn Pflichtfelder fehlen, abbrechen
if ($capital <= 0 || $riskPercent <= 0 || $entryPrice <= 0 || $volatility <= 0) {
	echo json_encode(['error' => 'Ungültige Eingabedaten']);
	exit;
}

// Maximales Risiko in €
$maxRisk = $capital * ($riskPercent / 100);

// Stop-Loss-Kurs aus Volatilität berechnen
if ($direction === 'long') {
	$stopLoss = $entryPrice * (1 - $volatility / 100);
} else {
	$stopLoss = $entryPrice * (1 + $volatility / 100);
}

// Verlust pro Aktie
$lossPerShare = abs($entryPrice - $stopLoss);

// Anzahl Aktien (Abrunden auf volle Stückzahl)
$shares = $lossPerShare > 0 ? floor($maxRisk / $lossPerShare) : 0;

// Investiertes Kapital
$investedCapital = $shares * $entryPrice;

// Tatsächliches Risiko
$actualRisk = $shares * $lossPerShare;

// Potenzieller Gewinn bei Bewegung um die Volatilität in die Gegenrichtung
if ($direction === 'long') {
	$targetPrice = $entryPrice * (1 + $volatility / 100);
} else {
	$targetPrice = $entryPrice * (1 - $volatility / 100);
}

$potentialProfit = ($targetPrice - $entryPrice) * $shares;
$potentialProfitPercent = $investedCapital > 0 ? ($potentialProfit / $investedCapital) * 100 : 0;

// CRV (Chance-Risiko-Verhältnis)
$crv = $actualRisk > 0 ? $potentialProfit / $actualRisk : 0;

// Ergebnis zurückgeben
echo json_encode([
	'anzahl_aktien'         => $shares,
	'max_risiko'            => $maxRisk,
	'verlust_pro_aktie'     => $lossPerShare,
	'investiertes_kapital'  => $investedCapital,
	'tatsaechliches_risiko' => $actualRisk,
	'stop_loss_kurs'        => $stopLoss,
	'potenzieller_gewinn'   => $potentialProfit,
	'prozentualer_gewinn'   => $potentialProfitPercent,
	'volatilitaet'          => $volatility,
	'crv'                   => $crv
]);