AI量化实验室

 找回密码
 立即注册
查看: 233|回复: 2

deap和gplearn在因子挖掘的各自的共同点,差异点,优势,缺...

[复制链接]

6

主题

10

帖子

40

积分

量化新人

积分
40
发表于 2024-8-12 14:24:21 | 显示全部楼层 |阅读模式

deap(Distributed Evolutionary Algorithms in Python)和gplearn(Genetic Programming Learning)是两个在Python中用于进化算法和遗传编程的库,它们在因子挖掘等优化问题中有着广泛的应用。以下是deap和gplearn的共同点、差异点、优势和缺点:

共同点:
  • 基于进化算法:两者都基于进化算法的原理,如遗传算法、遗传编程等,通过模拟自然选择和遗传变异机制来优化问题。
  • 适用于优化问题:它们都适用于解决复杂的优化问题,包括因子挖掘在内的特征选择、模型参数优化等。
  • Python实现:两者都是用Python编写的,易于集成到Python项目中。
差异点:
  • 专注领域:

    • deap是一个通用的进化算法框架,提供了一套丰富的工具和方法来实现和运行各种进化算法。
    • gplearn专注于遗传编程,特别是用于机器学习模型的自动特征生成和模型优化。
  • 实现方式:

    • deap提供了更多的灵活性和自定义选项,允许用户实现几乎任何类型的进化算法。
    • gplearn提供了更高级别的API,使得遗传编程的实现更加简单和直接,特别是用于学习问题。
  • 应用场景:

    • deap可以应用于更广泛的领域,包括但不限于因子挖掘、调度问题、路径规划等。
    • gplearn主要应用于自动特征提取和建模,特别是在金融领域。

优势:
  • deap:

    • 提供了广泛的算法实现和灵活的配置选项。
    • 适用于多种类型的优化问题。
    • 社区活跃,有丰富的文档和教程。
  • gplearn:

    • 简化了遗传编程的实现过程,使得非专家用户也能轻松使用。
    • 专注于自动特征生成,特别适用于机器学习领域。
    • 与scikit-learn兼容,易于集成到现有的机器学习工作流中。

缺点:
  • deap:

    • 学习曲线可能较陡,对于初学者来说可能需要更多的时间来掌握。
    • 由于其通用性,某些特定问题可能需要更多的定制工作。
  • gplearn:

    • 主要局限于遗传编程,对于非遗传编程问题可能不适用。
    • 相对于deap,可能在某些方面缺乏灵活性。

在选择deap或gplearn时,应根据具体问题的需求、个人的技术背景和项目的具体要求来决定。如果需要高度定制化的进化算法解决方案,deap可能是更好的选择。如果目标是自动特征生成和模型优化,尤其是在机器学习领域,gplearn可能更加合适。


61

主题

135

帖子

531

积分

管理员

积分
531
发表于 2024-8-12 18:23:43 | 显示全部楼层
sum(decay_linear(shift(ts_min(close, 40), 5))-40, 60) (np.float64(0.12568084274541702), np.float64(0.07130715361701878))
sign(high)/open (np.float64(0.08248275973790012), np.float64(-0.057052087973964064))
ts_argmin(ts_min(low, 20), 40) (np.float64(0.046236431187889504), np.float64(0.12683889696821868))
zscore(roc(open, 40), 40) (np.float64(0.043806925218871216), np.float64(0.010774631489047193))
sum(decay_linear(sign(high))-40, 20) (np.float64(0.03993232640033159), np.float64(-0.020410729371052566))
delta(decay_linear(ts_max(rank(low), 3)), 5) (np.float64(0.03529975692435608), np.float64(-0.003594289121396966))
ts_argmin(low, 60) (np.float64(0.02867618245281706), np.float64(0.13163531147892232))
abs(shift(ts_min(close, 40), 5)) (np.float64(0.023396260563695804), np.float64(-0.0967700030460787))
decay_linear(rank(delta(close, 10))) (np.float64(0.02272460111240577), np.float64(-0.09097636173138193))
delta(close/high, 3) (np.float64(0.02245988457765948), np.float64(-0.04632950318394544))

61

主题

135

帖子

531

积分

管理员

积分
531
发表于 2024-8-12 19:00:50 | 显示全部楼层
deap挖掘出的因子——样本内和样本外的IC值:
decay_linear(close/3, 10) (np.float64(0.03871329771497037), np.float64(-0.0061829131012325796))
product(low, 40)/1 (np.float64(0.024114542350391652), np.float64(-0.09981929090066838))
abs(shift(ts_min(low, 40), 5)) (np.float64(0.024114542350391652), np.float64(-0.09981929090066838))
product(product(close, 10), 10)/1 (np.float64(0.023396260563695804), np.float64(-0.0967700030460787))
ts_argmin(ts_argmax(product(high, 3)+60, 60), 5)/stddev(ts_argmax(roc(ts_min(volume, 20), 10), 20), 1) (np.float64(0.023396260563695804), np.float64(-0.0967700030460787))
abs(shift(ts_min(close, 40), 5)) (np.float64(0.023396260563695804), np.float64(-0.0967700030460787))
product(low, 10)/1 (np.float64(0.020377665608752454), np.float64(-0.08384461406885932))
decay_linear(volume, 5) (np.float64(0.014172878494535218), np.float64(-0.11317643758410037))
log(ts_argmin(product(rank(zscore(product(decay_linear(open, 20), 1), 1)), 20)/10, 10)) (np.float64(0.012851761532931393), np.float64(-0.11538016219950023))
sum(log(close)-10, 1) (np.float64(0.012851761532931393), np.float64(-0.11538016219950023))
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

AI量化实验室 ( 京ICP备16049031号-2 )

GMT+8, 2024-9-20 07:48 , Processed in 0.066815 second(s), 18 queries .

Powered by Discuz! X3.5

Copyright © 2001-2024 Tencent Cloud.

快速回复 返回顶部 返回列表