Another new pitfall... The factor expressions output by genetic algorithms lack logical auditing, so often even after extensive backtesting, the output still shows severely overfitted and contradictory factors, such as the following: where_signal((delay(1h_TD_Seq_4) <= (1d_Volatility_Compression_10_Z50 * 70)), where_signal((sma_20(1h_Donchian_Position_20) <= ema(1h_BB_Width_20, ema_fast(1h_Donchian_Position_20))), 1, 0), where_signal(cross_up(1d_Std_Compression_10_Z50, 15m_OBV_Relative_20_Z200), 0, -1)) How can this be solved? I integrated the Gemini 3.1 API, analyzing the high-scoring factor expressions every 20 generations. If an overfitting or logical contradiction was found, I intervened in the evolution process to forcibly remove it. However, Claude thought I shouldn't use Gemini for this. He suggested regulating factor output by optimizing the output logic, rather than adding a black box to the end of an already heavily randomized pipeline. Okay, let's give it a try.
This article is machine translated
Show original

Crypto_Painter
@CryptoPainter
04-02
又更新了一版,这次把遗传算法可用的特征变量也暴露到前端了,现在可以针对自己想要迭代的策略类型进行自定义了。
比如我想生成一个震荡短线策略,那就只选波动率与线性回归相关的指标或参数作为特征库,如果想要生成趋势策略,那就选均线或动能类特征。
不知不觉之间,搞出来了一个炼丹炉...好玩~ x.com/CryptoPainter/…

From Twitter
Disclaimer: The content above is only the author's opinion which does not represent any position of Followin, and is not intended as, and shall not be understood or construed as, investment advice from Followin.
Like
Add to Favorites
Comments
Share
Relevant content




