diff --git a/app/analytics/optimization/page.tsx b/app/analytics/optimization/page.tsx
index 312b591..3f3b653 100644
--- a/app/analytics/optimization/page.tsx
+++ b/app/analytics/optimization/page.tsx
@@ -64,6 +64,25 @@ interface TPSLAnalysis {
slExits: number
manualExits: number
}
+
+ dynamicATRAnalysis?: {
+ available: boolean
+ sampleSize: number
+ minSampleSize: number
+ sufficientData: boolean
+ avgATRPercent: number
+ dynamicTP2Percent: number
+ dynamicSLPercent: number
+ actualPnL: number
+ fixedSimulatedPnL: number
+ dynamicSimulatedPnL: number
+ dynamicAdvantage: number
+ dynamicAdvantagePercent: number
+ dynamicTP2HitRate: number
+ dynamicSLHitRate: number
+ recommendation: string
+ reasoning: string
+ }
}
error?: string
}
@@ -245,6 +264,142 @@ export default function OptimizationPage() {
+ {/* Dynamic ATR Analysis */}
+ {data.dynamicATRAnalysis?.available && (
+
+
+
+ 🎯 Dynamic ATR-Based TP/SL Analysis
+
+
+ {data.dynamicATRAnalysis.sampleSize}/{data.dynamicATRAnalysis.minSampleSize} trades collected
+
+
+
+ {/* Progress Bar */}
+
+
+ Data Collection Progress
+
+ {((data.dynamicATRAnalysis.sampleSize / data.dynamicATRAnalysis.minSampleSize) * 100).toFixed(1)}%
+
+
+
+
+
+ {/* Comparison Metrics */}
+
+ {/* Left: Current Fixed Targets */}
+
+
📌 Fixed Targets (Current)
+
+
+ TP2:
+ {data.currentLevels.tp2Percent}%
+
+
+ SL:
+ {data.currentLevels.slPercent}%
+
+
+
+ Simulated P&L:
+
+ ${data.dynamicATRAnalysis.fixedSimulatedPnL.toFixed(2)}
+
+
+
+
+
+
+ {/* Right: Dynamic ATR Targets */}
+
+
âš¡ Dynamic ATR-Based
+
+
+ TP2 (2x ATR):
+
+ {data.dynamicATRAnalysis.dynamicTP2Percent.toFixed(2)}%
+
+
+
+ SL (1.5x ATR):
+
+ {data.dynamicATRAnalysis.dynamicSLPercent.toFixed(2)}%
+
+
+
+
+ Simulated P&L:
+
+ ${data.dynamicATRAnalysis.dynamicSimulatedPnL.toFixed(2)}
+
+
+
+
+
+
+
+ {/* Advantage Highlight */}
+
= 0
+ ? 'bg-green-900/30 border border-green-600'
+ : 'bg-red-900/30 border border-red-600'
+ }`}>
+
+
+
Dynamic ATR Advantage
+
+ {data.dynamicATRAnalysis.dynamicAdvantage >= 0 ? '+' : ''}
+ ${data.dynamicATRAnalysis.dynamicAdvantage.toFixed(2)}
+
+ ({data.dynamicATRAnalysis.dynamicAdvantagePercent >= 0 ? '+' : ''}
+ {data.dynamicATRAnalysis.dynamicAdvantagePercent.toFixed(1)}%)
+
+
+
+
+
Avg ATR
+
+ {data.dynamicATRAnalysis.avgATRPercent.toFixed(2)}%
+
+
+
+
+
+ {/* Recommendation */}
+
+
+ {data.dynamicATRAnalysis.recommendation}
+
+
+ {data.dynamicATRAnalysis.reasoning}
+
+
+
+ )}
+
{/* Recommendations */}