Fix trader filter to support both fields
This commit is contained in:
@@ -13,6 +13,8 @@ interface Trade {
|
|||||||
result?: 'win' | 'loss' | 'open'
|
result?: 'win' | 'loss' | 'open'
|
||||||
pnl?: number
|
pnl?: number
|
||||||
rr?: number
|
rr?: number
|
||||||
|
trader?: string // New: which trader style
|
||||||
|
traderStyle?: string
|
||||||
}
|
}
|
||||||
|
|
||||||
interface ChartData {
|
interface ChartData {
|
||||||
@@ -321,7 +323,9 @@ export function TradingChart() {
|
|||||||
}
|
}
|
||||||
|
|
||||||
const closedTrades = trades.filter(t => t.result === 'win' || t.result === 'loss')
|
const closedTrades = trades.filter(t => t.result === 'win' || t.result === 'loss')
|
||||||
const filteredTrades = traderFilter === 'all' ? trades : trades.filter(t => t.trader === traderFilter)
|
const filteredTrades = traderFilter === 'all'
|
||||||
|
? trades
|
||||||
|
: trades.filter(t => t.trader === traderFilter || t.traderStyle === traderFilter)
|
||||||
const filteredClosed = filteredTrades.filter(t => t.result === 'win' || t.result === 'loss')
|
const filteredClosed = filteredTrades.filter(t => t.result === 'win' || t.result === 'loss')
|
||||||
const wins = filteredClosed.filter(t => t.result === 'win').length
|
const wins = filteredClosed.filter(t => t.result === 'win').length
|
||||||
const winRate = filteredClosed.length ? Math.round(wins / filteredClosed.length * 100) : 0
|
const winRate = filteredClosed.length ? Math.round(wins / filteredClosed.length * 100) : 0
|
||||||
@@ -329,7 +333,7 @@ export function TradingChart() {
|
|||||||
const avgRr = filteredClosed.length ? filteredClosed.reduce((s, t) => s + (t.rr || 0), 0) / filteredClosed.length : 0
|
const avgRr = filteredClosed.length ? filteredClosed.reduce((s, t) => s + (t.rr || 0), 0) / filteredClosed.length : 0
|
||||||
|
|
||||||
// Get unique traders from trades
|
// Get unique traders from trades
|
||||||
const tradersList = ['all', ...new Set(trades.map(t => t.trader).filter(Boolean))]
|
const tradersList = ['all', ...new Set(trades.map(t => t.trader || t.traderStyle).filter(Boolean))]
|
||||||
const cv = thothView[selectedAsset]
|
const cv = thothView[selectedAsset]
|
||||||
const getTE = (t: string) => t === 'uptrend' ? '🟢' : t === 'downtrend' ? '🔴' : '⚪️'
|
const getTE = (t: string) => t === 'uptrend' ? '🟢' : t === 'downtrend' ? '🔴' : '⚪️'
|
||||||
const getBC = (b: string) => b === 'bullish' ? 'text-green-400' : b === 'bearish' ? 'text-red-400' : 'text-yellow-400'
|
const getBC = (b: string) => b === 'bullish' ? 'text-green-400' : b === 'bearish' ? 'text-red-400' : 'text-yellow-400'
|
||||||
|
|||||||
Reference in New Issue
Block a user