diff --git a/.env b/.env index 69db2f0..55c257a 100644 --- a/.env +++ b/.env @@ -129,8 +129,8 @@ MAX_DAILY_DRAWDOWN=-50 # Maximum number of trades allowed per hour (prevents overtrading) MAX_TRADES_PER_HOUR=20 -# Minimum time between trades in seconds (cooldown period) -# Example: 600 = 10 minutes between trades +# Minimum time between trades in minutes (cooldown period) +# Example: 10 = 10 minutes between trades MIN_TIME_BETWEEN_TRADES=0 # DEX execution settings @@ -305,7 +305,7 @@ NEW_RELIC_LICENSE_KEY= # Recommended Daily Limits: # - MAX_DAILY_DRAWDOWN=-150 (stop at -15% loss) # - MAX_TRADES_PER_HOUR=6 (prevent overtrading) -# - MIN_TIME_BETWEEN_TRADES=600 (10min cooldown) +# - MIN_TIME_BETWEEN_TRADES=10 (10min cooldown) # # Expected Risk Per Trade (with defaults): # - Max Loss: $7.50 (50 * 10 * 0.015) diff --git a/app/settings/page.tsx b/app/settings/page.tsx index d89fe71..3d0fa07 100644 --- a/app/settings/page.tsx +++ b/app/settings/page.tsx @@ -385,12 +385,12 @@ export default function SettingsPage() { description="Maximum number of trades allowed per hour." /> updateSetting('MIN_TIME_BETWEEN_TRADES', v)} min={0} - max={3600} - step={60} + max={60} + step={1} description="Minimum wait time between trades to prevent overtrading." /> diff --git a/config/trading.ts b/config/trading.ts index 60b29d2..f0989ec 100644 --- a/config/trading.ts +++ b/config/trading.ts @@ -38,7 +38,7 @@ export interface TradingConfig { // Risk limits maxDailyDrawdown: number // USD stop trading threshold maxTradesPerHour: number // Limit overtrading - minTimeBetweenTrades: number // Cooldown period (seconds) + minTimeBetweenTrades: number // Cooldown period (minutes) // Execution useMarketOrders: boolean // true = instant execution @@ -91,7 +91,7 @@ export const DEFAULT_TRADING_CONFIG: TradingConfig = { // Risk limits maxDailyDrawdown: -150, // Stop trading if daily loss exceeds $150 (-15%) maxTradesPerHour: 6, // Max 6 trades per hour - minTimeBetweenTrades: 600, // 10 minutes cooldown + minTimeBetweenTrades: 10, // 10 minutes cooldown // Execution useMarketOrders: true, // Use market orders for reliable fills @@ -234,6 +234,9 @@ export function getConfigFromEnv(): Partial { maxTradesPerHour: process.env.MAX_TRADES_PER_HOUR ? parseInt(process.env.MAX_TRADES_PER_HOUR) : undefined, + minTimeBetweenTrades: process.env.MIN_TIME_BETWEEN_TRADES + ? parseInt(process.env.MIN_TIME_BETWEEN_TRADES) + : undefined, } }