股票推荐标准 番邦量化想法:傅立叶改变FFT与卡尔曼滤波打破数据信号量化

发布日期:2024-12-13 07:03    点击次数:55

股票推荐标准 番邦量化想法:傅立叶改变FFT与卡尔曼滤波打破数据信号量化

FTKF EMAC(傅里叶变换与卡尔曼滤波的EMA交叉)是一种趋势追踪想法,它鸠合了傅里叶变换类似、卡尔曼滤波和两个不同长度的指数移动平均线(EMA),以提供准确且平滑的阛阓趋势信号。通过这三者的鸠合,该想法大略捕捉阛阓底层周期,减少杂音,并生成可操作的瞻念察,使其符合于检测新兴趋势和证明现存趋势。

更好的私用想法,期货自动化交往要害与股票自动化要害在星球

图片

工夫细节傅里叶变换类似

旨在通过柔顺要害频率来识别价钱行为中的主导周期性形状,同期过滤掉杂音和不太迫切的波动。它强调最有好奇艳羡好奇艳羡的价钱周期,使想法大略间隔迫切趋势,忽略次要波动。这种周期性意志为趋势检测加多了独特的深度,使EMA大略措置更清洁、更可靠的数据集。

卡尔曼滤波

加多了动态杂音减少功能,把柄曩昔和现时的数据和洽其对将来价钱趋势的展望。跟着新价钱数据的输入,滤波器会再行校准本人,以确保价钱行为保抓平滑且无非常波动。这种实时和洽是要害,不错最小化滞后并幸免诞妄信号,确保EMA对更准确和谨慎的阛阓数据作念出反应。卡尔曼滤波器在保抓对趋势变化明锐性的同期平滑价钱数据的才气,与傅里叶类似相反相成,确保在波动和谨慎的阛阓环境中具有高精度。

图片

EMA交叉

触及使用两个EMA:一个较短的EMA对价钱变动反应赶紧,一个较长的EMA反应较慢。较短的EMA讲求捕捉即时的阛阓变化,检测潜在的看涨或看跌趋势。较长的EMA平滑价钱波动并提供趋势证明,与较短的EMA所有这个词责任,确保信号的可靠性。当较短的EMA穿越到较长的EMA之上时,示意看涨趋势;反之,当它穿越到较长的EMA之下时,示意看跌趋势。这种开拓提供了一种明晰的形势来追踪阛阓标的,并使用样式编码信号(绿色示意看涨,红色示意看跌)以增强视觉明晰度。和洽EMA周期的生动性使交往者大略把柄其偏好的时辰框架和战术进行微调,使其妥当不同的阛阓条目。

一个要害的工夫方面是,第一个EMA应永恒短于第二个EMA。要是第一个EMA比第二个长,器具的灵验性将受到影响,因为较快的EMA料想打算用于发出看涨信号,而较长的EMA用于发出看跌信号。倒置它们的变装会导致信号蔓延或交加,裁减想法早期检测趋势变化的才气,使其在波动阛阓中成果裁减。这是该想法的独一要害缺欠,不治服这一规定将导致交加。

这些组件像时钟同样协同责任,创建一个全面且灵验的趋势追踪系统。傅里叶类似卓越了要害的周期性通顺,卡尔曼滤波通曩昔除杂音来优化这些通顺,而EMA则阐述过滤后的数据以生成可操作的趋势信号。每个组件齐增强了下一个组件,确保最终输出既反应又可靠,具有最小的诞妄信号或滞后。创建了一个使用鄙俚主见但以前未鸠合过的想法。

图片

工夫纪念

该想法鸠合了傅里叶变换类似、卡尔曼滤波和两个不同长度的EMA,以提供准确且实时的趋势追踪信号。傅里叶类似识别主导阛阓周期,而卡尔曼滤波动态去除杂音并在实时中优化价钱数据。两个EMA随后使用这些过滤后的数据生成基于交叉的买入和卖出信号。较短的EMA对价钱变化反应赶紧,而较长的EMA提供更平滑的趋势证明。组件协同责任,以最小的诞妄信号或滞后捕捉趋势,确保交往者大略实时支吾阛阓变化。可定制的EMA周期使器具妥当不同的阛阓条目,增强了其对各式交往战术的妥当性。

要使用该想法,交往者应把柄当时辰框架和战术和洽EMA长度,确保较短的EMA永恒短于较长的EMA,以保抓器具的反应性。样式编码信号提供了视觉明晰度,使其易于识别潜在的入场和出场点。这种傅里叶、卡尔曼和EMA步履的鸠合提供了一个平滑且高度灵验的趋势追踪器具,在趋势和涟漪阛阓中阐述出色。

卡尔曼滤波量化源代码:

//@version=5////////// MADE BY lijin/////////indicator('FTKF EMAC [Mattes]', overlay=true)// Input parameters for Kalman FilterkalmanProcessNoise = input(0.001, title='Kalman Process Noise', group='Kalman Filtration')kalmanMeasurementNoise = input(0.01, title='Kalman Measurement Noise', group='Kalman Filtration')// Input parameters for Fourier ApproximationfourierPeriod = input(20, title='Fourier Approximation Period', group='Fourier Approximation')emaFourierPeriod = input(14, title='EMA Smoothing for Fourier', group='Fourier Approximation')// Input parameters for MAsperiod1 = input(7, title='MA Period 1', group='EMA inputs')period2 = input(21, title='MA Period 2', group='EMA inputs')PlotDema = input(false, title='Show Both EMAs as confluence?', group='Additional')ColoredBG = input(true, title='Color Background?', group='Additional')// Function to apply a simple Kalman FilterkalmanFilter(src) => var float x = na var float p = na // Initialize variables if they're not set if na(x) x := src p := 1.0 // Prediction k = p / (p + kalmanMeasurementNoise) // Kalman Gain x := x + k * (src - x) // Update estimate p := (1 - k) * p + kalmanProcessNoise // Update error covariance x// Function for Fourier approximationfourierApprox(src, length) => sine_sum = 0.0 cosine_sum = 0.0 for i = 0 to length - 1 sine_sum := sine_sum + src[i] * math.sin(2 * math.pi * i / length) cosine_sum := cosine_sum + src[i] * math.cos(2 * math.pi * i / length) amplitude = math.sqrt(sine_sum * sine_sum + cosine_sum * cosine_sum) / length amplitude// Applying Kalman Filter on the pricefilteredPrice = kalmanFilter(close)// Applying Fourier approximationfourierResult = fourierApprox(close, fourierPeriod)// Smoothing the Fourier approximation with an EMAsmoothedFourier = ta.ema(fourierResult, emaFourierPeriod)// Calculate MAs based on Kalman-filtered pricema1 = ta.ema(filteredPrice, period1)ma2 = ta.ema(filteredPrice, period2)// Determine the dominant MAdominantMA = ma1 > ma2 ? ma1 : ma2// Define colors based on trend directiondominantColor = dominantMA == ma1 ? #00ff08 : #ff0707// Plotting the dominant MA with corresponding colorsplot(dominantMA, color=dominantColor, title='Dominant MA', linewidth=2)plot(PlotDema ? ma1 : na, color=#b9b9b9, title='ma1', linewidth=1)plot(PlotDema ? ma2 : na, color=#6f6f6f, title='ma2', linewidth=1)// Optional: Add background color based on trend directionbgcolor(ColoredBG ? dominantMA == ma1 ? color.new(color.green, 90) : color.new(color.red, 90) : na)

更好的私用想法,期货自动化交往要害与股票自动化要害在星球

本站仅提供存储办事,通盘实质均由用户发布,如发现存害或侵权实质,请点击举报。