UNPKG

@thuantan2060/technicalindicators

Version:
60 lines (59 loc) 2.83 kB
import StockData from '../StockData'; import HangingMan, { IHangingManConfig } from './HangingMan'; import { IBearishHammerStickConfig } from './BearishHammerStick'; import { IBullishHammerConfig } from './BullishHammerStick'; /** * Configuration interface for HangingManUnconfirmed pattern. * Extends HangingMan configuration. */ export interface IHangingManUnconfirmedConfig extends IHangingManConfig, IBullishHammerConfig, IBearishHammerStickConfig { } /** * Default configuration for HangingManUnconfirmed pattern. */ export declare const DEFAULT_HANGING_MAN_UNCONFIRMED_CONFIG: IHangingManUnconfirmedConfig; export default class HangingManUnconfirmed extends HangingMan { protected readonly config: IHangingManUnconfirmedConfig; constructor(config?: IHangingManUnconfirmedConfig); logic(data: StockData): boolean; upwardTrend(data: StockData, confirm?: boolean): boolean; includesHammer(data: StockData, confirm?: boolean): any; private isCustomHammerLike; } /** * Detects HangingManUnconfirmed candlestick pattern in the provided stock data. * * A HangingManUnconfirmed is a bearish reversal pattern that appears at the end of an uptrend. * Unlike the confirmed version, this pattern doesn't require confirmation from the next candle. * It consists of: * 1. An uptrend in the first 3 candles * 2. A hammer-like candle (small body with long lower shadow) at the 4th position * * This pattern suggests potential bearish reversal but is less reliable than the confirmed version. * * @param data - Stock data containing OHLC values for at least 4 periods * @param config - Configuration object for pattern detection * @param config.scale - Scale parameter for approximateEqual function precision (default: 0.001) * @param config.minimumThreshold - Minimum threshold for absolute measurements (default: 0.01) * @param config.absoluteMinimum - Absolute minimum for very small values (default: 0.001) * @param config.movementThresholdBase - Movement threshold multiplier for confirmation (default: 1.0) * @param config.movementThresholdScale - Movement threshold scale factor (default: 0.3) * @returns True if HangingManUnconfirmed pattern is detected, false otherwise * * @example * ```typescript * // Using default configuration * const hasHangingManUnconfirmedPattern = hangingmanunconfirmed(stockData); * * // Using custom configuration * const hasHangingManUnconfirmedPattern = hangingmanunconfirmed(stockData, { * scale: 0.002, * minimumThreshold: 0.02, * movementThresholdBase: 1.5 * }); * * // Backward compatibility with scale parameter * const hasHangingManUnconfirmedPattern = hangingmanunconfirmed(stockData, { scale: 0.002 }); * ``` */ export declare function hangingmanunconfirmed(data: StockData, config?: IHangingManUnconfirmedConfig): any;