NIFTY Strategy Optimizer

Fetch live data - Sweep parameter combinations - Get top 20 results  |  Build: 2026-10-17-A

1. Fetch Data

No data fetched yet.

2. Parameter Sweep Ranges

Set min/max for each parameter. Every value in the range is tested. Narrow ranges for faster results.

to
to
to
to
to
to

3. Strategy Filters

Initializing...

Fetch data from Yahoo Finance and run the optimization to see results here.

// --- CSV Upload Handler --- document.getElementById('parseCsvBtn').addEventListener('click', async () => { const file = document.getElementById('csvUpload').files[0]; if (!file) { document.getElementById('csvStatus').textContent = 'Please select a CSV file'; document.getElementById('csvStatus').className = 'yahoo-status error'; return; } const reader = new FileReader(); reader.onload = async (e) => { const csvText = e.target.result; document.getElementById('csvStatus').className = 'yahoo-status loading'; document.getElementById('csvStatus').textContent = 'Parsing CSV...'; try { const resp = await fetch('/api/csv?csv=' + encodeURIComponent(csvText) + '&symbol=NIFTY'); const data = await resp.json(); if (data.error) { document.getElementById('csvStatus').textContent = data.error; document.getElementById('csvStatus').className = 'yahoo-status error'; } else { // Store data and proceed to optimization window.csvData = data.candles; document.getElementById('csvStatus').textContent = `Successfully parsed ${data.candles.length} candles`; document.getElementById('csvStatus').className = 'yahoo-status success'; // Trigger optimization with the CSV data if (typeof optimizeWithData === 'function') { optimizeWithData(data.candles); } else { // Fallback: just show the data console.log('CSV Candles:', data.candles); } } } catch (err) { document.getElementById('csvStatus').textContent = 'Error: ' + err.message; document.getElementById('csvStatus').className = 'yahoo-status error'; } }; reader.readAsText(file); }); // Also make extractFrontMonthCsv available globally if needed window.extractFrontMonthCsv = extractFrontMonthCsv;

2. Manual CSV Upload

Upload NSE Bhavcopy ZIP/CSV file (front month futures only)