#!/usr/bin/env node

/**
 * 对冲刷量交易系统 - 主入口
 * 多平台多账户 Delta 中性策略
 *
 * 核心功能:
 * 1. 同一平台/多个平台 多账户开出基本头寸
 * 2. 不断增加/减少头寸增加交易量
 * 3. 保持持仓量，尽可能全局 Delta 中性
 */

import { fileURLToPath } from 'url'
import { dirname } from 'path'
import process from 'process'

// 根据环境选择启动方式
if (process.env.NODE_ENV === 'production') {
  // 生产环境使用模块化入口
  import('./main-modular.js')
    .then(module => {
      console.log('🚀 启动生产环境对冲交易系统')
    })
    .catch(console.error)
} else {
  // 开发环境也使用模块化入口
  import('./main-modular.js')
    .then(module => {
      console.log('🔧 启动开发环境对冲交易系统')
    })
    .catch(error => {
      console.error('启动失败:', error)
      console.log('🔄 尝试启动基础系统...')

      // 如果核心应用启动失败，运行基础示例
      console.log('💡 对冲刷量交易系统')
      console.log('核心功能: 多平台多账户 Delta 中性策略')
      console.log('使用 yarn test:integration 运行完整测试')
    })
}

// 辅助函数保持向后兼容
export enum Delays {
  Short = 500,
  Medium = 2000,
  Long = 5000,
}

function delayedHello(name: string, delay: number = Delays.Medium): Promise<string> {
  return new Promise((resolve: (value?: string) => void) =>
    setTimeout(() => resolve(`你好, ${name} - 对冲交易系统`), delay),
  )
}

export async function greeter(name: string) {
  return await delayedHello(name, Delays.Medium)
}
