433 lines
17 KiB
JSON
433 lines
17 KiB
JSON
{
|
|||
|
|
"common": {
|
||
|
|
"back": "Back",
|
||
|
|
"save": "Save",
|
||
|
|
"cancel": "Cancel",
|
||
|
|
"edit": "Edit",
|
||
|
|
"delete": "Delete",
|
||
|
|
"add": "Add",
|
||
|
|
"search": "Search",
|
||
|
|
"refresh": "Refresh",
|
||
|
|
"loading": "Loading...",
|
||
|
|
"success": "Success",
|
||
|
|
"failed": "Failed",
|
||
|
|
"confirm": "Confirm",
|
||
|
|
"submit": "Submit",
|
||
|
|
"reset": "Reset",
|
||
|
|
"close": "Close",
|
||
|
|
"yes": "Yes",
|
||
|
|
"no": "No"
|
||
|
|
},
|
||
|
|
"account": {
|
||
|
|
"title": "Account Management",
|
||
|
|
"list": "Account List",
|
||
|
|
"detail": "Account Details",
|
||
|
|
"import": "Import Account",
|
||
|
|
"update": "Update Account",
|
||
|
|
"delete": "Delete Account",
|
||
|
|
"accountId": "Account ID",
|
||
|
|
"accountName": "Account Name",
|
||
|
|
"walletAddress": "Wallet Address",
|
||
|
|
"balance": "Account Balance",
|
||
|
|
"refreshBalance": "Refresh Balance",
|
||
|
|
"apiCredentials": "API Credentials Configuration",
|
||
|
|
"apiKey": "API Key",
|
||
|
|
"apiSecret": "API Secret",
|
||
|
|
"apiPassphrase": "API Passphrase",
|
||
|
|
"configured": "Configured",
|
||
|
|
"notConfigured": "Not Configured",
|
||
|
|
"fullConfig": "Full Configuration",
|
||
|
|
"partialConfig": "Partial Configuration",
|
||
|
|
"statistics": "Trading Statistics",
|
||
|
|
"totalOrders": "Total Orders",
|
||
|
|
"activeOrders": "Active Orders",
|
||
|
|
"completedOrders": "Completed Orders",
|
||
|
|
"positionCount": "Position Count",
|
||
|
|
"totalPnl": "Total P&L",
|
||
|
|
"editTip": "Edit Tip",
|
||
|
|
"editTipDesc": "Leave API credential fields empty to keep unchanged. Enter new values to update API credentials.",
|
||
|
|
"accountNamePlaceholder": "Account Name (Optional)",
|
||
|
|
"leaveEmptyToNotModify": "Leave empty to not modify",
|
||
|
|
"updateSuccess": "Account updated successfully",
|
||
|
|
"updateFailed": "Failed to update account",
|
||
|
|
"getDetailFailed": "Failed to get account details",
|
||
|
|
"accountIdRequired": "Account ID cannot be empty"
|
||
|
|
},
|
||
|
|
"message": {
|
||
|
|
"loginSuccess": "Login successful",
|
||
|
|
"loginFailed": "Login failed",
|
||
|
|
"createUserSuccess": "User created successfully",
|
||
|
|
"createUserFailed": "Failed to create user",
|
||
|
|
"updatePasswordSuccess": "Password updated successfully",
|
||
|
|
"updatePasswordFailed": "Failed to update password"
|
||
|
|
},
|
||
|
|
"login": {
|
||
|
|
"title": "Login",
|
||
|
|
"username": "Username",
|
||
|
|
"password": "Password",
|
||
|
|
"usernamePlaceholder": "Username",
|
||
|
|
"passwordPlaceholder": "Password",
|
||
|
|
"usernameRequired": "Please enter username",
|
||
|
|
"passwordRequired": "Please enter password",
|
||
|
|
"forgotPassword": "Forgot password? Reset password"
|
||
|
|
},
|
||
|
|
"order": {
|
||
|
|
"create": "Order Created",
|
||
|
|
"update": "Order Updated",
|
||
|
|
"cancel": "Order Cancelled",
|
||
|
|
"event": "Order Event",
|
||
|
|
"buy": "Buy",
|
||
|
|
"sell": "Sell",
|
||
|
|
"market": "Market",
|
||
|
|
"status": "Status",
|
||
|
|
"filled": "Filled",
|
||
|
|
"remaining": "Remaining"
|
||
|
|
},
|
||
|
|
"accountList": {
|
||
|
|
"title": "Account Management",
|
||
|
|
"importAccount": "Import Account",
|
||
|
|
"accountName": "Account Name",
|
||
|
|
"walletAddress": "Wallet Address",
|
||
|
|
"proxyAddress": "Proxy Wallet Address",
|
||
|
|
"apiCredentials": "API Credentials",
|
||
|
|
"balance": "Balance",
|
||
|
|
"activeOrders": "Active Orders",
|
||
|
|
"action": "Actions",
|
||
|
|
"detail": "Detail",
|
||
|
|
"edit": "Edit",
|
||
|
|
"delete": "Delete",
|
||
|
|
"viewDetail": "View Detail",
|
||
|
|
"deleteConfirm": "Are you sure you want to delete this account?",
|
||
|
|
"deleteConfirmDesc": "Before deleting the account, please make sure all active orders are cancelled. This action cannot be undone!",
|
||
|
|
"deleteConfirmDescSimple": "This action cannot be undone!",
|
||
|
|
"deleteConfirmOk": "Confirm Delete",
|
||
|
|
"deleteSuccess": "Account deleted successfully",
|
||
|
|
"deleteFailed": "Failed to delete account",
|
||
|
|
"copySuccess": "Copied to clipboard",
|
||
|
|
"copyFailed": "Copy failed",
|
||
|
|
"fullConfig": "Full Config",
|
||
|
|
"partialConfig": "Partial Config",
|
||
|
|
"notConfigured": "Not Configured",
|
||
|
|
"totalBalance": "Total Balance",
|
||
|
|
"available": "Available",
|
||
|
|
"position": "Position",
|
||
|
|
"refreshBalance": "Refresh Balance",
|
||
|
|
"refreshBalanceSuccess": "Balance refreshed successfully",
|
||
|
|
"refreshBalanceFailed": "Failed to refresh balance",
|
||
|
|
"getDetailFailed": "Failed to get account detail",
|
||
|
|
"openDetailFailed": "Failed to open detail",
|
||
|
|
"accountDetail": "Account Detail",
|
||
|
|
"accountId": "Account ID",
|
||
|
|
"apiKey": "API Key",
|
||
|
|
"apiSecret": "API Secret",
|
||
|
|
"apiPassphrase": "API Passphrase",
|
||
|
|
"configured": "Configured",
|
||
|
|
"notConfiguredStatus": "Not Configured",
|
||
|
|
"configStatus": "Config Status",
|
||
|
|
"statistics": "Trading Statistics",
|
||
|
|
"totalOrders": "Total Orders",
|
||
|
|
"activeOrdersCount": "Active Orders",
|
||
|
|
"completedOrders": "Completed Orders",
|
||
|
|
"positionCount": "Position Count",
|
||
|
|
"totalPnl": "Total PnL",
|
||
|
|
"editAccount": "Edit Account",
|
||
|
|
"editTip": "Edit Tip",
|
||
|
|
"editTipDesc": "Leave API credential fields empty to keep unchanged. Enter new values to update API credentials.",
|
||
|
|
"accountNamePlaceholder": "Account Name (Optional)",
|
||
|
|
"leaveEmptyToNotModify": "Leave empty to keep unchanged",
|
||
|
|
"updateSuccess": "Account updated successfully",
|
||
|
|
"updateFailed": "Failed to update account",
|
||
|
|
"getDetailFailedForEdit": "Failed to get account detail",
|
||
|
|
"loading": "Loading..."
|
||
|
|
},
|
||
|
|
"accountImport": {
|
||
|
|
"title": "Import Account",
|
||
|
|
"back": "Back",
|
||
|
|
"securityTip": "Security Tip",
|
||
|
|
"securityTipDesc": "Private keys will be stored in the backend database. Please ensure database access is secure. HTTPS is recommended.",
|
||
|
|
"importMethod": "Import Method",
|
||
|
|
"privateKey": "Private Key",
|
||
|
|
"mnemonic": "Mnemonic",
|
||
|
|
"privateKeyLabel": "Private Key",
|
||
|
|
"privateKeyPlaceholder": "Enter private key (64-character hex string, 0x prefix optional)",
|
||
|
|
"privateKeyRequired": "Please enter private key",
|
||
|
|
"privateKeyInvalid": "Invalid private key format (should be 64-character hex string)",
|
||
|
|
"walletAddress": "Wallet Address",
|
||
|
|
"walletAddressPlaceholder": "Wallet address (will be derived from private key)",
|
||
|
|
"walletAddressRequired": "Please enter wallet address",
|
||
|
|
"walletAddressInvalid": "Invalid wallet address format",
|
||
|
|
"walletAddressMismatch": "Wallet address does not match private key",
|
||
|
|
"mnemonicLabel": "Mnemonic",
|
||
|
|
"mnemonicPlaceholder": "Enter 12 or 24 words mnemonic (space-separated)",
|
||
|
|
"mnemonicRequired": "Please enter mnemonic",
|
||
|
|
"mnemonicInvalid": "Invalid mnemonic format (should be 12 or 24 words, space-separated)",
|
||
|
|
"walletAddressMismatchMnemonic": "Wallet address does not match mnemonic",
|
||
|
|
"accountName": "Account Name",
|
||
|
|
"accountNamePlaceholder": "Optional, for identifying account",
|
||
|
|
"importAccount": "Import Account",
|
||
|
|
"importSuccess": "Account imported successfully",
|
||
|
|
"importFailed": "Failed to import account",
|
||
|
|
"derivedAddress": "Derived Address",
|
||
|
|
"addressError": "Cannot derive address from private key",
|
||
|
|
"addressErrorMnemonic": "Cannot derive address from mnemonic"
|
||
|
|
},
|
||
|
|
"leader": {
|
||
|
|
"title": "Leader Management",
|
||
|
|
"leaderName": "Leader Name",
|
||
|
|
"walletAddress": "Wallet Address",
|
||
|
|
"category": "Category",
|
||
|
|
"all": "All",
|
||
|
|
"copyTradingCount": "Copy Trading Count",
|
||
|
|
"createdAt": "Created At",
|
||
|
|
"action": "Actions",
|
||
|
|
"add": "Add",
|
||
|
|
"edit": "Edit",
|
||
|
|
"delete": "Delete",
|
||
|
|
"listFailed": "Failed to get Leader list",
|
||
|
|
"deleteSuccess": "Leader deleted successfully",
|
||
|
|
"deleteFailed": "Failed to delete Leader",
|
||
|
|
"deleteConfirm": "Are you sure you want to delete this Leader?",
|
||
|
|
"deleteConfirmDesc": "This action cannot be undone!",
|
||
|
|
"deleteConfirmOk": "Confirm Delete"
|
||
|
|
},
|
||
|
|
"menu": {
|
||
|
|
"accounts": "Account Management",
|
||
|
|
"copyTrading": "Copy Trading",
|
||
|
|
"leaders": "Leader Management",
|
||
|
|
"templates": "Templates",
|
||
|
|
"copyTradingConfig": "Copy Trading Config",
|
||
|
|
"positions": "Position Management",
|
||
|
|
"statistics": "Statistics",
|
||
|
|
"users": "User Management",
|
||
|
|
"systemSettings": "System",
|
||
|
|
"language": "Language",
|
||
|
|
"apiHealth": "API Health",
|
||
|
|
"proxy": "Proxy",
|
||
|
|
"logout": "Logout",
|
||
|
|
"logoutConfirm": "Confirm Logout",
|
||
|
|
"logoutConfirmDesc": "Are you sure you want to logout?",
|
||
|
|
"navigation": "Navigation Menu"
|
||
|
|
},
|
||
|
|
"languageSettings": {
|
||
|
|
"title": "Language Settings",
|
||
|
|
"currentLanguage": "Current Language",
|
||
|
|
"followSystem": "Follow System",
|
||
|
|
"currentSystemLanguage": "Current System Language",
|
||
|
|
"description": "After changing the language, the interface will update immediately.",
|
||
|
|
"changeSuccess": "Language changed successfully",
|
||
|
|
"changeFailed": "Failed to change language"
|
||
|
|
},
|
||
|
|
"apiHealthStatus": {
|
||
|
|
"title": "API Health Status",
|
||
|
|
"normal": "Normal",
|
||
|
|
"notConfigured": "Not Configured",
|
||
|
|
"abnormal": "Abnormal",
|
||
|
|
"responseTime": "Response Time"
|
||
|
|
},
|
||
|
|
"proxySettings": {
|
||
|
|
"title": "Proxy Settings",
|
||
|
|
"enabled": "Enable Proxy",
|
||
|
|
"host": "Proxy Host",
|
||
|
|
"port": "Proxy Port",
|
||
|
|
"username": "Proxy Username (Optional)",
|
||
|
|
"password": "Proxy Password (Optional)",
|
||
|
|
"hostRequired": "Please enter proxy host address",
|
||
|
|
"hostInvalid": "Please enter a valid host address",
|
||
|
|
"hostPlaceholder": "e.g., 127.0.0.1 or proxy.example.com",
|
||
|
|
"portRequired": "Please enter proxy port",
|
||
|
|
"portInvalid": "Port must be between 1-65535",
|
||
|
|
"portPlaceholder": "e.g., 8888",
|
||
|
|
"usernamePlaceholder": "Enter username if proxy requires authentication",
|
||
|
|
"passwordPlaceholder": "Enter password if proxy requires authentication",
|
||
|
|
"passwordPlaceholderUpdate": "Leave empty to keep password unchanged",
|
||
|
|
"passwordHelp": "Enter password if proxy requires authentication",
|
||
|
|
"passwordHelpUpdate": "Leave empty to keep password unchanged, enter new password to update",
|
||
|
|
"check": "Check Proxy",
|
||
|
|
"checkSuccess": "Proxy check successful",
|
||
|
|
"checkFailed": "Proxy check failed",
|
||
|
|
"saveSuccess": "Configuration saved successfully",
|
||
|
|
"saveFailed": "Failed to save configuration",
|
||
|
|
"getFailed": "Failed to get proxy configuration",
|
||
|
|
"latency": "Latency"
|
||
|
|
},
|
||
|
|
"configPage": {
|
||
|
|
"title": "Global Configuration",
|
||
|
|
"message": "Configuration Function Migrated",
|
||
|
|
"description": "Global configuration function has been migrated to the following pages:",
|
||
|
|
"templates": "Templates",
|
||
|
|
"templatesDesc": "Manage copy trading parameters (ratio, amount, risk control, etc.)",
|
||
|
|
"copyTrading": "Copy Trading Config",
|
||
|
|
"copyTradingDesc": "Associate accounts, templates and Leaders to enable copy trading relationships",
|
||
|
|
"systemSettings": "System Settings",
|
||
|
|
"systemSettingsDesc": "Configure proxy, view API health status",
|
||
|
|
"footer": "Please use the above pages for configuration management."
|
||
|
|
},
|
||
|
|
"resetPassword": {
|
||
|
|
"title": "Reset Password",
|
||
|
|
"firstUse": "First Time Using System",
|
||
|
|
"firstUseDesc": "Please use the reset key provided by the administrator to set the initial password",
|
||
|
|
"resetKey": "Reset Key",
|
||
|
|
"resetKeyRequired": "Please enter reset key",
|
||
|
|
"resetKeyPlaceholder": "Please enter reset key",
|
||
|
|
"username": "Username",
|
||
|
|
"usernameRequired": "Please enter username",
|
||
|
|
"usernamePlaceholder": "Please enter username",
|
||
|
|
"newPassword": "New Password",
|
||
|
|
"newPasswordRequired": "Please enter new password",
|
||
|
|
"passwordPlaceholder": "At least 6 characters",
|
||
|
|
"passwordMinLength": "Password must be at least 6 characters",
|
||
|
|
"passwordStrength": "Password Strength",
|
||
|
|
"weak": "Weak",
|
||
|
|
"fair": "Fair",
|
||
|
|
"medium": "Medium",
|
||
|
|
"strong": "Strong",
|
||
|
|
"veryStrong": "Very Strong",
|
||
|
|
"confirmPassword": "Confirm Password",
|
||
|
|
"confirmPasswordRequired": "Please confirm password",
|
||
|
|
"confirmPasswordPlaceholder": "Please enter password again",
|
||
|
|
"passwordMismatch": "Passwords do not match",
|
||
|
|
"submit": "Reset Password",
|
||
|
|
"success": "Password reset successfully",
|
||
|
|
"failed": "Password reset failed"
|
||
|
|
},
|
||
|
|
"leaderList": {
|
||
|
|
"title": "Leader Management",
|
||
|
|
"addLeader": "Add Leader",
|
||
|
|
"leaderName": "Leader Name",
|
||
|
|
"walletAddress": "Wallet Address",
|
||
|
|
"category": "Category",
|
||
|
|
"all": "All",
|
||
|
|
"copyTradingCount": "Copy Trading Count",
|
||
|
|
"copyTradingRelations": "{{count}} copy trading relations",
|
||
|
|
"createdAt": "Created At",
|
||
|
|
"noData": "No Leader data",
|
||
|
|
"fetchFailed": "Failed to get Leader list",
|
||
|
|
"deleteSuccess": "Leader deleted successfully",
|
||
|
|
"deleteFailed": "Failed to delete Leader",
|
||
|
|
"deleteConfirm": "Are you sure you want to delete this Leader?",
|
||
|
|
"deleteConfirmDesc": "This Leader has {{count}} copy trading relations, please delete them first"
|
||
|
|
},
|
||
|
|
"userList": {
|
||
|
|
"title": "User Management",
|
||
|
|
"username": "Username",
|
||
|
|
"role": "Role",
|
||
|
|
"defaultAccount": "Default Account",
|
||
|
|
"normalUser": "Normal User",
|
||
|
|
"updateMyPassword": "Update My Password",
|
||
|
|
"addUser": "Add User",
|
||
|
|
"createUser": "Create User",
|
||
|
|
"updatePassword": "Update Password",
|
||
|
|
"updateMyPasswordTitle": "Update My Password",
|
||
|
|
"newPassword": "New Password",
|
||
|
|
"password": "Password",
|
||
|
|
"passwordRequired": "Please enter password",
|
||
|
|
"passwordMinLength": "Password must be at least 6 characters",
|
||
|
|
"passwordPlaceholder": "At least 6 characters",
|
||
|
|
"usernameRequired": "Please enter username",
|
||
|
|
"usernamePlaceholder": "Please enter username",
|
||
|
|
"newPasswordRequired": "Please enter new password",
|
||
|
|
"fetchFailed": "Failed to get user list",
|
||
|
|
"createSuccess": "User created successfully",
|
||
|
|
"createFailed": "Failed to create user",
|
||
|
|
"updatePasswordSuccess": "Password updated successfully",
|
||
|
|
"updatePasswordFailed": "Failed to update password",
|
||
|
|
"updateOwnPasswordSuccess": "Password updated successfully, please login again",
|
||
|
|
"updateOwnPasswordFailed": "Failed to update password",
|
||
|
|
"deleteSuccess": "User deleted successfully",
|
||
|
|
"deleteFailed": "Failed to delete user",
|
||
|
|
"deleteConfirm": "Are you sure you want to delete this user?",
|
||
|
|
"total": "Total {{total}} items"
|
||
|
|
},
|
||
|
|
"statistics": {
|
||
|
|
"title": "Statistics",
|
||
|
|
"totalOrders": "Total Orders",
|
||
|
|
"totalPnl": "Total P&L",
|
||
|
|
"winRate": "Win Rate",
|
||
|
|
"avgPnl": "Average P&L",
|
||
|
|
"maxProfit": "Max Profit",
|
||
|
|
"maxLoss": "Max Loss",
|
||
|
|
"startDate": "Start Date",
|
||
|
|
"endDate": "End Date",
|
||
|
|
"fetchFailed": "Failed to get statistics",
|
||
|
|
"refresh": "Refresh",
|
||
|
|
"reset": "Reset"
|
||
|
|
},
|
||
|
|
"orderList": {
|
||
|
|
"title": "Order Management",
|
||
|
|
"leader": "Leader",
|
||
|
|
"market": "Market",
|
||
|
|
"category": "Category",
|
||
|
|
"side": "Side",
|
||
|
|
"price": "Price",
|
||
|
|
"size": "Size",
|
||
|
|
"status": "Status",
|
||
|
|
"pnl": "P&L",
|
||
|
|
"createdAt": "Created At",
|
||
|
|
"fetchFailed": "Failed to get order list"
|
||
|
|
},
|
||
|
|
"templateList": {
|
||
|
|
"title": "Template Management",
|
||
|
|
"addTemplate": "Add Template",
|
||
|
|
"searchPlaceholder": "Search template name",
|
||
|
|
"templateName": "Template Name",
|
||
|
|
"copyMode": "Copy Mode",
|
||
|
|
"ratio": "Ratio",
|
||
|
|
"fixedAmount": "Fixed Amount",
|
||
|
|
"ratioMode": "Ratio Mode",
|
||
|
|
"fixedAmountMode": "Fixed Amount Mode",
|
||
|
|
"copyConfig": "Copy Config",
|
||
|
|
"supportSell": "Support Sell",
|
||
|
|
"notSupportSell": "Not Support Sell",
|
||
|
|
"useCount": "Use Count",
|
||
|
|
"timesUsed": " times used",
|
||
|
|
"amountLimit": "Amount Limit",
|
||
|
|
"max": "Max",
|
||
|
|
"min": "Min",
|
||
|
|
"notSet": "Not Set",
|
||
|
|
"otherConfig": "Other Config",
|
||
|
|
"maxDailyOrders": "Max Daily Orders",
|
||
|
|
"priceTolerance": "Price Tolerance",
|
||
|
|
"copy": "Copy",
|
||
|
|
"copySuffix": "Copy",
|
||
|
|
"noData": "No template data",
|
||
|
|
"fetchFailed": "Failed to get template list",
|
||
|
|
"deleteSuccess": "Template deleted successfully",
|
||
|
|
"deleteFailed": "Failed to delete template",
|
||
|
|
"deleteConfirm": "Are you sure you want to delete this template?",
|
||
|
|
"deleteConfirmDesc": "This action cannot be undone. Please ensure no copy trading relationships are using this template",
|
||
|
|
"copySuccess": "Template copied successfully",
|
||
|
|
"copyFailed": "Failed to copy template",
|
||
|
|
"minAmountError": "Minimum amount must be >= 1",
|
||
|
|
"fixedAmountRequired": "Please enter fixed copy trading amount",
|
||
|
|
"invalidNumber": "Please enter a valid number",
|
||
|
|
"fixedAmountError": "Fixed amount must be >= 1, please re-enter"
|
||
|
|
},
|
||
|
|
"copyTradingList": {
|
||
|
|
"title": "Copy Trading Config Management",
|
||
|
|
"addCopyTrading": "Add Copy Trading",
|
||
|
|
"wallet": "Wallet",
|
||
|
|
"account": "Account",
|
||
|
|
"template": "Template",
|
||
|
|
"leader": "Leader",
|
||
|
|
"enabled": "Enabled",
|
||
|
|
"disabled": "Disabled",
|
||
|
|
"totalPnl": "Total P&L",
|
||
|
|
"statistics": "Statistics",
|
||
|
|
"orders": "Orders",
|
||
|
|
"viewStatistics": "View Statistics",
|
||
|
|
"buyOrders": "Buy Orders",
|
||
|
|
"sellOrders": "Sell Orders",
|
||
|
|
"matchedOrders": "Matched Orders",
|
||
|
|
"filterWallet": "Filter Wallet",
|
||
|
|
"filterTemplate": "Filter Template",
|
||
|
|
"filterLeader": "Filter Leader",
|
||
|
|
"fetchFailed": "Failed to get copy trading list",
|
||
|
|
"startSuccess": "Copy trading started successfully",
|
||
|
|
"stopSuccess": "Copy trading stopped successfully",
|
||
|
|
"updateStatusFailed": "Failed to update copy trading status",
|
||
|
|
"deleteSuccess": "Copy trading deleted successfully",
|
||
|
|
"deleteFailed": "Failed to delete copy trading",
|
||
|
|
"deleteConfirm": "Are you sure you want to delete this copy trading relationship?"
|
||
|
|
}
|
||
|
|
}
|