UNPKG

@gabriel3615/ta_analysis

Version:

stock ta analysis

80 lines (79 loc) 2.56 kB
interface ShortExpectedReturnParams { symbol: string; initialShortShares: number; feePerTrade: number; upPercent: number; downPercent: number; tradingRatio: number; stopLossPercent: number; volatility?: number; } /** * 模拟特定波动率下的股价路径 * @returns 每日股价数组 * @param symbol */ declare function simulatePricePath(symbol: string): Promise<number[]>; /** * 计算在特定价格路径下做空滚仓策略的收益 * @param pricePath 价格路径数组 * @param params 策略参数 * @returns 策略收益结果 */ declare function calculateShortStrategyReturns(pricePath: number[], params: ShortExpectedReturnParams): { initialInvestment: number; finalShortShares: number; finalAvgShortPrice: number; finalShortLiability: number; cashBalance: number; totalFees: number; totalTrades: number; totalReturn: number; returnRate: number; breakevenDropNeeded: number; trades: any[]; stopLossCount: number; }; /** * 分析做空滚仓策略在多种市场情景下的预期收益 * @param params 策略和模拟参数 * @returns 综合分析结果 */ declare function analyzeShortExpectedReturns(params: ShortExpectedReturnParams): Promise<{ simulationParams: { initialPrice: number; currentPrice: number; stopLossPercent: number; volatility: number; }; averageResults: { averageTotalReturn: number; averageReturnRate: number; averageTrades: number; averageFinalShortPrice: number; stopLossCount: number; successRate: number; }; allResults: { initialInvestment: number; finalShortShares: number; finalAvgShortPrice: number; finalShortLiability: number; cashBalance: number; totalFees: number; totalTrades: number; totalReturn: number; returnRate: number; breakevenDropNeeded: number; trades: any[]; stopLossCount: number; }; }>; /** * 运行做空滚仓策略的期待收益分析 * @param params 分析参数 * @returns 格式化的分析结果 */ declare function runShortExpectedReturnsAnalysis(params: ShortExpectedReturnParams): Promise<string>; declare function compareShortVolatilityScenarios(baseParams: ShortExpectedReturnParams): Promise<string>; export { ShortExpectedReturnParams, simulatePricePath, calculateShortStrategyReturns, analyzeShortExpectedReturns, runShortExpectedReturnsAnalysis, compareShortVolatilityScenarios, };