feat: improve backtest system and add OpenRouter balance query
This commit is contained in:
@@ -729,6 +729,7 @@ const locale = {
|
||||
'dashboard.indicator.backtest.commission': 'Commission Rate (%)',
|
||||
'dashboard.indicator.backtest.commissionHint': 'Charged on notional value (incl. leverage) per trade; both entry & exit are deducted from balance.',
|
||||
'dashboard.indicator.backtest.leverage': 'Leverage',
|
||||
'dashboard.indicator.backtest.timeframe': 'Timeframe',
|
||||
'dashboard.indicator.backtest.tradeDirection': 'Trade Direction',
|
||||
'dashboard.indicator.backtest.longOnly': 'Long Only',
|
||||
'dashboard.indicator.backtest.shortOnly': 'Short Only',
|
||||
@@ -737,6 +738,11 @@ const locale = {
|
||||
'dashboard.indicator.backtest.rerun': 'Run Again',
|
||||
'dashboard.indicator.backtest.close': 'Close',
|
||||
'dashboard.indicator.backtest.running': 'Running indicator backtest...',
|
||||
'dashboard.indicator.backtest.loadingTip1': 'Fetching historical K-line data...',
|
||||
'dashboard.indicator.backtest.loadingTip2': 'Executing strategy signal calculation...',
|
||||
'dashboard.indicator.backtest.loadingTip3': 'Simulating trade execution...',
|
||||
'dashboard.indicator.backtest.loadingTip4': 'Calculating backtest metrics...',
|
||||
'dashboard.indicator.backtest.loadingTip5': 'Almost done, please wait...',
|
||||
'dashboard.indicator.backtest.results': 'Backtest Results',
|
||||
'dashboard.indicator.backtest.totalReturn': 'Total Return',
|
||||
'dashboard.indicator.backtest.annualReturn': 'Annual Return',
|
||||
@@ -782,6 +788,15 @@ const locale = {
|
||||
'dashboard.indicator.backtest.profit': 'P&L',
|
||||
'dashboard.indicator.backtest.success': 'Backtest completed',
|
||||
'dashboard.indicator.backtest.failed': 'Backtest failed, please try again later',
|
||||
'dashboard.indicator.backtest.quickSelect': 'Quick Select',
|
||||
// Multi-timeframe backtest precision hints
|
||||
'dashboard.indicator.backtest.precisionMode': 'Backtest Precision Mode',
|
||||
'dashboard.indicator.backtest.estimatedCandles': 'Est. {count} candles to process',
|
||||
'dashboard.indicator.backtest.highPrecisionDesc': 'Using 1-minute candles for high-precision backtest, stop-loss/take-profit triggers are more accurate',
|
||||
'dashboard.indicator.backtest.mediumPrecisionDesc': 'Range exceeds 30 days, using 5-minute candles to balance precision and performance',
|
||||
'dashboard.indicator.backtest.standardModeWarning': 'Using Standard Backtest Mode',
|
||||
'dashboard.indicator.backtest.standardModeDesc': 'Current config does not support high-precision backtest, using strategy timeframe',
|
||||
'dashboard.indicator.backtest.onlyCryptoSupported': 'High-precision backtest only supports cryptocurrency market',
|
||||
'dashboard.indicator.backtest.noIndicatorCode': 'This indicator has no backtestable code',
|
||||
'dashboard.indicator.backtest.noSymbol': 'Please select a trading symbol first',
|
||||
'dashboard.indicator.backtest.dateRangeExceeded': 'Backtest date range exceeded: {timeframe} timeframe allows max {maxRange}',
|
||||
@@ -1892,6 +1907,14 @@ const locale = {
|
||||
'settings.saveSuccess': 'Settings saved successfully',
|
||||
'settings.saveFailed': 'Failed to save settings',
|
||||
'settings.loadFailed': 'Failed to load settings',
|
||||
'settings.openrouterBalance': 'OpenRouter Account Balance',
|
||||
'settings.queryBalance': 'Query Balance',
|
||||
'settings.balanceUsage': 'Used',
|
||||
'settings.balanceRemaining': 'Remaining',
|
||||
'settings.balanceLimit': 'Total Limit',
|
||||
'settings.balanceQuerySuccess': 'Balance query successful',
|
||||
'settings.balanceQueryFailed': 'Failed to query balance',
|
||||
'settings.balanceNotQueried': 'Click "Query Balance" to get account info',
|
||||
'settings.default': 'Default',
|
||||
'settings.pleaseSelect': 'Please select',
|
||||
'settings.inputApiKey': 'Enter key',
|
||||
|
||||
@@ -638,6 +638,7 @@ const locale = {
|
||||
'dashboard.indicator.backtest.commission': '手续费率(%)',
|
||||
'dashboard.indicator.backtest.commissionHint': '按名义价值(含杠杆)收取;每笔成交(开/平仓)都会从余额扣除。',
|
||||
'dashboard.indicator.backtest.leverage': '杠杆倍率',
|
||||
'dashboard.indicator.backtest.timeframe': 'K线周期',
|
||||
'dashboard.indicator.backtest.tradeDirection': '交易方向',
|
||||
'dashboard.indicator.backtest.longOnly': '做多',
|
||||
'dashboard.indicator.backtest.shortOnly': '做空',
|
||||
@@ -646,6 +647,11 @@ const locale = {
|
||||
'dashboard.indicator.backtest.rerun': '重新回测',
|
||||
'dashboard.indicator.backtest.close': '关闭',
|
||||
'dashboard.indicator.backtest.running': '正在进行指标回测...',
|
||||
'dashboard.indicator.backtest.loadingTip1': '正在获取历史K线数据...',
|
||||
'dashboard.indicator.backtest.loadingTip2': '正在执行策略信号计算...',
|
||||
'dashboard.indicator.backtest.loadingTip3': '正在模拟交易执行...',
|
||||
'dashboard.indicator.backtest.loadingTip4': '正在计算回测指标...',
|
||||
'dashboard.indicator.backtest.loadingTip5': '即将完成,请稍候...',
|
||||
'dashboard.indicator.backtest.results': '回测结果',
|
||||
'dashboard.indicator.backtest.totalReturn': '总收益率',
|
||||
'dashboard.indicator.backtest.annualReturn': '年化收益',
|
||||
@@ -687,6 +693,15 @@ const locale = {
|
||||
'dashboard.indicator.backtest.profit': '盈亏',
|
||||
'dashboard.indicator.backtest.success': '回测完成',
|
||||
'dashboard.indicator.backtest.failed': '回测失败,请稍后重试',
|
||||
'dashboard.indicator.backtest.quickSelect': '快速选择',
|
||||
// 多时间框架回测精度提示
|
||||
'dashboard.indicator.backtest.precisionMode': '回测精度模式',
|
||||
'dashboard.indicator.backtest.estimatedCandles': '预计处理约 {count} 根K线',
|
||||
'dashboard.indicator.backtest.highPrecisionDesc': '使用1分钟级别K线进行高精度回测,止损止盈触发更精确',
|
||||
'dashboard.indicator.backtest.mediumPrecisionDesc': '回测区间超过30天,使用5分钟级别K线以平衡精度与性能',
|
||||
'dashboard.indicator.backtest.standardModeWarning': '使用标准回测模式',
|
||||
'dashboard.indicator.backtest.standardModeDesc': '当前配置不支持高精度回测,将使用策略K线进行回测',
|
||||
'dashboard.indicator.backtest.onlyCryptoSupported': '高精度回测仅支持加密货币市场',
|
||||
'dashboard.indicator.backtest.noIndicatorCode': '该指标没有可回测的代码',
|
||||
'dashboard.indicator.backtest.noSymbol': '请先选择交易标的',
|
||||
'dashboard.indicator.backtest.dateRangeExceeded': '回测时间范围超出限制:{timeframe}周期最多可回测{maxRange}',
|
||||
@@ -1631,6 +1646,14 @@ const locale = {
|
||||
'settings.saveSuccess': '设置保存成功',
|
||||
'settings.saveFailed': '保存设置失败',
|
||||
'settings.loadFailed': '加载配置失败',
|
||||
'settings.openrouterBalance': 'OpenRouter 账户余额',
|
||||
'settings.queryBalance': '查询余额',
|
||||
'settings.balanceUsage': '已使用',
|
||||
'settings.balanceRemaining': '剩余额度',
|
||||
'settings.balanceLimit': '总限额',
|
||||
'settings.balanceQuerySuccess': '余额查询成功',
|
||||
'settings.balanceQueryFailed': '余额查询失败',
|
||||
'settings.balanceNotQueried': '点击"查询余额"获取账户信息',
|
||||
'settings.default': '默认',
|
||||
'settings.pleaseSelect': '请选择',
|
||||
'settings.inputApiKey': '请输入密钥',
|
||||
|
||||
@@ -638,6 +638,7 @@ const locale = {
|
||||
'dashboard.indicator.backtest.commission': '手續費率(%)',
|
||||
'dashboard.indicator.backtest.commissionHint': '按名義價值(含槓桿)收取;每筆成交(開/平倉)都會從餘額扣除。',
|
||||
'dashboard.indicator.backtest.leverage': '槓杆倍率',
|
||||
'dashboard.indicator.backtest.timeframe': 'K線週期',
|
||||
'dashboard.indicator.backtest.tradeDirection': '交易方向',
|
||||
'dashboard.indicator.backtest.longOnly': '做多',
|
||||
'dashboard.indicator.backtest.shortOnly': '做空',
|
||||
@@ -646,6 +647,11 @@ const locale = {
|
||||
'dashboard.indicator.backtest.rerun': '重新回測',
|
||||
'dashboard.indicator.backtest.close': '關閉',
|
||||
'dashboard.indicator.backtest.running': '正在進行指標回測...',
|
||||
'dashboard.indicator.backtest.loadingTip1': '正在獲取歷史K線數據...',
|
||||
'dashboard.indicator.backtest.loadingTip2': '正在執行策略信號計算...',
|
||||
'dashboard.indicator.backtest.loadingTip3': '正在模擬交易執行...',
|
||||
'dashboard.indicator.backtest.loadingTip4': '正在計算回測指標...',
|
||||
'dashboard.indicator.backtest.loadingTip5': '即將完成,請稍候...',
|
||||
'dashboard.indicator.backtest.results': '回測結果',
|
||||
'dashboard.indicator.backtest.totalReturn': '總收益率',
|
||||
'dashboard.indicator.backtest.annualReturn': '年化收益',
|
||||
@@ -687,6 +693,15 @@ const locale = {
|
||||
'dashboard.indicator.backtest.profit': '盈虧',
|
||||
'dashboard.indicator.backtest.success': '回測完成',
|
||||
'dashboard.indicator.backtest.failed': '回測失敗,請稍後重試',
|
||||
'dashboard.indicator.backtest.quickSelect': '快速選擇',
|
||||
// 多時間框架回測精度提示
|
||||
'dashboard.indicator.backtest.precisionMode': '回測精度模式',
|
||||
'dashboard.indicator.backtest.estimatedCandles': '預計處理約 {count} 根K線',
|
||||
'dashboard.indicator.backtest.highPrecisionDesc': '使用1分鐘級別K線進行高精度回測,止損止盈觸發更精確',
|
||||
'dashboard.indicator.backtest.mediumPrecisionDesc': '回測區間超過30天,使用5分鐘級別K線以平衡精度與性能',
|
||||
'dashboard.indicator.backtest.standardModeWarning': '使用標準回測模式',
|
||||
'dashboard.indicator.backtest.standardModeDesc': '當前配置不支持高精度回測,將使用策略K線進行回測',
|
||||
'dashboard.indicator.backtest.onlyCryptoSupported': '高精度回測僅支持加密貨幣市場',
|
||||
'dashboard.indicator.backtest.noIndicatorCode': '該指標沒有可回測的代碼',
|
||||
'dashboard.indicator.backtest.noSymbol': '請先選擇交易標的',
|
||||
'dashboard.indicator.backtest.dateRangeExceeded': '回測時間範圍超出限制:{timeframe}周期最多可回測{maxRange}',
|
||||
@@ -1631,6 +1646,14 @@ const locale = {
|
||||
'settings.saveSuccess': '設置保存成功',
|
||||
'settings.saveFailed': '保存設置失敗',
|
||||
'settings.loadFailed': '加載配置失敗',
|
||||
'settings.openrouterBalance': 'OpenRouter 賬戶餘額',
|
||||
'settings.queryBalance': '查詢餘額',
|
||||
'settings.balanceUsage': '已使用',
|
||||
'settings.balanceRemaining': '剩餘額度',
|
||||
'settings.balanceLimit': '總限額',
|
||||
'settings.balanceQuerySuccess': '餘額查詢成功',
|
||||
'settings.balanceQueryFailed': '餘額查詢失敗',
|
||||
'settings.balanceNotQueried': '點擊"查詢餘額"獲取賬戶信息',
|
||||
'settings.default': '默認',
|
||||
'settings.pleaseSelect': '請選擇',
|
||||
'settings.inputApiKey': '請輸入密鑰',
|
||||
|
||||
Reference in New Issue
Block a user