추세검색기 기능 추가

This commit is contained in:
Macbook
2026-05-26 13:04:25 +09:00
parent ae8e96cef4
commit 7cf43609dc
9 changed files with 895 additions and 792 deletions
+64 -54
View File
@@ -1156,65 +1156,75 @@ export interface TrendSearchRequest {
limit: number;
scanLimit: number;
sortBy: string;
newHighDays: number;
priceEnabled: boolean;
volumeEnabled: boolean;
flowEnabled: boolean;
fundamentalEnabled: boolean;
near52wHigh: boolean;
ret3m: boolean;
ret6m: boolean;
maDeviation: boolean;
maFullAlign: boolean;
stage2: boolean;
relativeStrength: boolean;
newHighCount: boolean;
tradeAmount: boolean;
volVs5dAvg: boolean;
turnover: boolean;
bidAskRatio: boolean;
smartMoney: boolean;
instConsecutive: boolean;
rsiHigh: boolean;
macdPeak: boolean;
lightCredit: boolean;
earningsGrowth: boolean;
roe: boolean;
opMargin: boolean;
pegBelow1: boolean;
minMatchRate?: number;
maAlignEnabled: boolean;
trendEnabled: boolean;
volumePowerEnabled: boolean;
indicatorEnabled: boolean;
priceAboveMa: boolean;
maAlignment: boolean;
maConvergence: boolean;
maConvergencePct: number;
ma20SlopeUp: boolean;
ma20SlopeBars: number;
newHighBreakout: boolean;
newHighBreakoutDays: number;
newHighNearPct: number;
ichimokuAboveCloud: boolean;
volumeVsPrior200: boolean;
volumeVsPriorPct: number;
minTurnover5dAvg: boolean;
minTurnover5dAvgKrw: number;
volMa5Over20: boolean;
macdGoldenCross: boolean;
rsiBand: boolean;
rsiMin: number;
rsiMax: number;
dmiBullish: boolean;
adxMin: number;
}
export const DEFAULT_TREND_SEARCH_REQUEST: TrendSearchRequest = {
timeframe: '1d',
limit: 20,
scanLimit: 80,
sortBy: 'near52wHigh',
newHighDays: 20,
priceEnabled: true,
volumeEnabled: true,
flowEnabled: true,
fundamentalEnabled: false,
near52wHigh: true,
ret3m: false,
ret6m: false,
maDeviation: true,
maFullAlign: true,
stage2: false,
relativeStrength: true,
newHighCount: false,
tradeAmount: false,
volVs5dAvg: true,
turnover: false,
bidAskRatio: false,
smartMoney: false,
instConsecutive: false,
rsiHigh: true,
macdPeak: false,
lightCredit: false,
earningsGrowth: false,
roe: false,
opMargin: false,
pegBelow1: false,
scanLimit: 60,
sortBy: 'matchRate',
minMatchRate: 0,
maAlignEnabled: true,
trendEnabled: true,
volumePowerEnabled: false,
indicatorEnabled: false,
priceAboveMa: true,
maAlignment: true,
maConvergence: false,
maConvergencePct: 3,
ma20SlopeUp: true,
ma20SlopeBars: 2,
newHighBreakout: true,
newHighBreakoutDays: 20,
newHighNearPct: 5,
ichimokuAboveCloud: false,
volumeVsPrior200: false,
volumeVsPriorPct: 150,
minTurnover5dAvg: false,
minTurnover5dAvgKrw: 1_000_000_000,
volMa5Over20: false,
macdGoldenCross: false,
rsiBand: false,
rsiMin: 50,
rsiMax: 75,
dmiBullish: false,
adxMin: 18,
};
export const TREND_TIMEFRAMES = ['1m', '3m', '5m', '10m', '15m', '30m', '1h', '4h', '1d', '1w', '1M'] as const;