UNPKG

@baguskto/saham

Version:

MCP Server untuk data saham Indonesia (IDX) - Implementasi Node.js/TypeScript

96 lines 2.76 kB
/** * Technical Analysis utilities for stock data */ import { StockDataPoint } from './csv-parser'; export interface TechnicalIndicators { sma?: Record<number, number[]>; ema?: Record<number, number[]>; rsi?: number[]; macd?: { macd: number[]; signal: number[]; histogram: number[]; }; bollinger?: { upper: number[]; middle: number[]; lower: number[]; }; support?: number; resistance?: number; volatility?: number; } export interface StockAnalysis { ticker: string; period: string; dataPoints: number; priceAnalysis: { currentPrice: number; priceChange: number; priceChangePercent: number; high52Week: number; low52Week: number; averageVolume: number; }; technicalIndicators: TechnicalIndicators; summary: { trend: 'bullish' | 'bearish' | 'neutral'; strength: 'strong' | 'moderate' | 'weak'; recommendation: 'buy' | 'sell' | 'hold'; confidence: number; }; } export declare class TechnicalAnalysis { /** * Calculate Simple Moving Average */ static calculateSMA(data: StockDataPoint[], period: number): number[]; /** * Calculate Exponential Moving Average */ static calculateEMA(data: StockDataPoint[], period: number): number[]; /** * Calculate Relative Strength Index */ static calculateRSI(data: StockDataPoint[], period?: number): number[]; /** * Calculate MACD (Moving Average Convergence Divergence) */ static calculateMACD(data: StockDataPoint[], fastPeriod?: number, slowPeriod?: number, signalPeriod?: number): { macd: number[]; signal: number[]; histogram: number[]; }; /** * Calculate Bollinger Bands */ static calculateBollingerBands(data: StockDataPoint[], period?: number, stdDev?: number): { upper: number[]; middle: number[]; lower: number[]; }; /** * Calculate support and resistance levels */ static calculateSupportResistance(data: StockDataPoint[]): { support: number; resistance: number; }; /** * Calculate volatility (annualized) */ static calculateVolatility(data: StockDataPoint[], period?: number): number; /** * Perform comprehensive stock analysis */ static analyzeStock(data: StockDataPoint[], ticker: string, period: string): StockAnalysis; /** * Generate trading summary and recommendation */ private static generateSummary; /** * Helper function to calculate EMA from array of values */ private static calculateEMAFromValues; } //# sourceMappingURL=technical-analysis.d.ts.map