@gabriel3615/ta_analysis
Version:
stock ta analysis
76 lines (75 loc) • 2.21 kB
TypeScript
interface ExpectedReturnParams {
symbol: string;
initialShares: number;
feePerTrade: number;
downPercent: number;
upPercent: number;
tradingRatio: number;
stopLossPercent: number;
}
/**
* 模拟特定波动率下的股价路径
* @returns 每日股价数组
* @param symbol
*/
declare function getPrices(symbol: string): Promise<number[]>;
/**
* 计算在特定价格路径下滚仓策略的收益
* @param pricePath 价格路径数组
* @param params 策略参数
* @returns 策略收益结果
*/
declare function calculateStrategyReturns(pricePath: number[], params: ExpectedReturnParams): {
initialInvestment: number;
finalShares: number;
finalAvgCost: number;
finalMarketValue: number;
cashBalance: number;
totalFees: number;
totalTrades: number;
totalReturn: number;
returnRate: number;
breakevenGrowthNeeded: number;
trades: any[];
stopLossCount: number;
};
/**
* 分析滚仓策略在多种市场情景下的预期收益
* @param params 策略和模拟参数
* @returns 综合分析结果
*/
declare function analyzeExpectedReturns(params: ExpectedReturnParams): Promise<{
simulationParams: {
initialPrice: number;
currentPrice: number;
stopLossPercent: number;
};
averageResults: {
averageTotalReturn: number;
averageReturnRate: number;
averageTrades: any[];
averageFinalCost: number;
stopLossCount: number;
};
allResults: {
initialInvestment: number;
finalShares: number;
finalAvgCost: number;
finalMarketValue: number;
cashBalance: number;
totalFees: number;
totalTrades: number;
totalReturn: number;
returnRate: number;
breakevenGrowthNeeded: number;
trades: any[];
stopLossCount: number;
};
}>;
/**
* 运行滚仓策略的期待收益分析
* @param params 分析参数
* @returns 格式化的分析结果
*/
declare function runExpectedReturnsAnalysis(params: ExpectedReturnParams): Promise<string>;
export { ExpectedReturnParams, getPrices, calculateStrategyReturns, analyzeExpectedReturns, runExpectedReturnsAnalysis, };