基于QuantConnect开源引擎Lean本地实现Fama-French五因子Python策略

这篇具有很好参考价值的文章主要介绍了基于QuantConnect开源引擎Lean本地实现Fama-French五因子Python策略。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

概要

基于QuantConnect的开源Lean引擎,生成本地数据源,并实现运行Python语言的Fama-French五因子策略

开发环境

  • VS2022企业版,需要安装C#和Python组件;
  • Anaconda3-2020.11-Windows-x86_64,这个版本对应Python3.8,是根据Lean环境要求选择的;
  • git clone https://github.com/QuantConnect/Lean.git下载的Lean框架;

操作流程

  1. VS2022打开Lean工程,F5运行一遍进行Nuget包还原;
  2. Anaconda安装时需要选中注册环境变量,安装好后,pip install quantconnect-stubs安装包;
  3. Data\equity\usa下将daily、factor_files、fundamental、map_files文件夹清空自带Symbol;
  4. ToolBox\RandomDataGenerator下修改生成指定格式的Symbol;
        public IEnumerable<Symbol> GenerateRandomSymbols()
        {
   
            if (!Settings.Tickers.IsNullOrEmpty())
            {
   
                foreach (var symbol in Settings.Tickers.SelectMany(GenerateAsset))
                {
   
                    yield return symbol;
                }
            }
            else
            {
   
                for (var i = 0; i < Settings.SymbolCount; i++)
                {
   
                	//生成stk000000,stk000001,...stk000999格式的证券符号
                    var ticker = "stk" + i.ToString().PadLeft(6, '0');
                    var symbol = Symbol.Create(ticker, Settings.SecurityType, Settings.Market);
                    yield return symbol;
                    //foreach (var symbol in GenerateAsset())
                    //{
   
                    //    yield return symbol;
                    //}
                }
            }
        }
  1. QuantConnect.ToolBox项目设为启动项目,属性-调试-常规-打开调试启动配置文件UI-启动配置文件-命令行参数,进行配置后F5运行生成1000个证券数据;
--app=rdg
--start=19980101
--end=20240319
--symbol-count=1000
--resolution=Daily
--random-seed=123456
--rename-percentage=0.0
--ipo-percentage=0.0
--splits-percentage=0.0
--dividends-percentage=0.0
--dividend-every-quarter-percentage=0.0

基于QuantConnect开源引擎Lean本地实现Fama-French五因子Python策略,python

基于QuantConnect开源引擎Lean本地实现Fama-French五因子Python策略,python
基于QuantConnect开源引擎Lean本地实现Fama-French五因子Python策略,python

5.目录\ToolBox\CoarseUniverseGenerator\CoarseUniverseGeneratorProgram.cs下语句修改成var hasFundamentalData = true; 目录\Common\Data\UniverseSelection\CoarseFundamentalDataProvider.cs下语句修改成return coarse.HasFundamentalData;项目属性–app=rdg修改为cug然后F5生成基本面Fundamental的股票池Universe数据;文章来源地址https://www.toymoban.com/news/detail-843302.html

        private static CoarseFundamental GenerateFactorFileRow(string ticker, SecurityIdentifierContext sidContext, CorporateFactorProvider factorFile, TradeBar tradeBar)
        {
   
            var date = tradeBar.Time;
            var factorFileRow = factorFile?.GetScalingFactors(date);
            var dollarVolume = Math.Truncate((double)

到了这里,关于基于QuantConnect开源引擎Lean本地实现Fama-French五因子Python策略的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • 本地化部署离线开源免费语音识别API,支持多模态AI能力引擎

    思通数科作为一家专注于多模态AI能力开源引擎平台,其技术产品涵盖了自然语言处理、情感分析、实体识别、图像识别与分类、OCR识别以及语音识别等多个领域。在语音识别这一细分市场,思通数科的技术产品中的音频文件转写服务有着相似的应用场景和功能特点。 思通数

    2024年04月12日
    浏览(31)
  • #LLMOps##AIGC# Dify_构建本地知识库问答应用-生成Al应用的创新引擎 用于构建助手API和GPT的开源开发平台

    github: https://github.com/langgenius/dify/blob/main/README_CN.md 介绍文档:https://docs.dify.ai/getting-started/readme Dify 笔记 Dify 是什么? 开源的大语言模型(LLM)应用开发平台 融合了后端即服务(Backend as Service)和 LLMOps 的理念 使开发者可以快速搭建生产级的生成式 AI 应用 为什么使用 Dify?

    2024年01月16日
    浏览(23)
  • 基于llama.cpp学习开源LLM本地部署

    目录 前言 一、llama.cpp是什么? 二、使用步骤 1.下载编译llama.cpp 2. 普通编译 3. BLAS编译 3.1、OpenBLAS 编译 CPU版 3.2 cuBLAS 编译GPU版本 4. 模型量化 4.1、模型文件下载:

    2024年01月21日
    浏览(21)
  • Quivr 基于GPT和开源LLMs构建本地知识库 (更新篇)

    自从大模型被炒的越来越火之后,似乎国内涌现出很多希望基于大模型构建本地知识库的需求,大概在5月底的时候,当时Quivr发布了第一个0.0.1版本,第一个版本仅仅只是使用LangChain技术结合OpenAI的GPT模型实现了一个最基本的架子,功能并不够完善,但可以研究研究思路,当

    2024年02月12日
    浏览(24)
  • Kettle Local引擎使用记录(一)(基于Kettle web版数据集成开源工具data-integration源码)

    在前面对 data-integration 做了一些简单了解,从部署到应用,今天尝试把后端运行作业代码拎出来,去真正运行一下,只有实操之后才会有更深刻的认识,有些看着简单的功能,实操过程中会遇到很多问题,这个时候你的想法也会发生改变,所以很多时候为什么开发人员痛恨做

    2024年02月02日
    浏览(16)
  • 如何使用内网穿透工具实现Java远程连接本地Elasticsearch搜索分析引擎

    简单几步,结合Cpolar 内网穿透工具实现Java 远程连接操作本地分布式搜索和数据分析引擎Elasticsearch。 Cpolar内网穿透提供了更高的安全性和隐私保护,通过使用加密通信通道,Cpolar技术可以确保数据传输的安全性,这为用户和团队提供了更可靠的保护,使他们能够放心地处理和

    2024年02月04日
    浏览(29)
  • 分布式搜索和分析引擎Elasticsearch本地部署结合内网穿透实现远程访问

    本文主要介绍如何在Windows系统部署分布式搜索和分析引擎Elasticsearch,并结合Cpolar内网穿透工具实现公网远程连接和访问本地服务。 Elasticsearch是一个基于Lucene库的分布式搜索和分析引擎,它提供了一个分布式、多租户的全文搜索引擎,具有HTTP Web接口和无模式JSON文档,同时也

    2024年01月21日
    浏览(28)
  • ceph之rados设计原理与实现第五章:高效的本地对象存储引擎Bluestore

    由于FileStore底层仍然通过操作系统自带的本地文件系统管理磁盘,所以为了能够使用本地文件系统,所有针对RADOS的操作都需要转换成POSIX语义。 所以引入了BlueStore直接管理文件。 文件系统提供的核心操作就是读和写,BlueStore也是。 对于文件系统, 读操作除非缓存命中,否

    2024年02月02日
    浏览(37)
  • Knowledge-QA-LLM: 基于本地知识库+LLM的开源问答系统

    基于本地知识库+LLM的问答系统。该项目的思路是由langchain-ChatGLM启发而来。 缘由: 之前使用过这个项目,感觉不是太灵活,部署不太友好。 借鉴如何用大语言模型构建一个知识问答系统中思路,尝试以此作为实践。 优势: 整个项目为模块化配置,不依赖 lanchain 库,各部分

    2024年02月15日
    浏览(22)
  • 【ChatGPT】使用 LangChain 和 Ray 实现 100 行代码构建 LLM 开源搜索引擎【1】

    目录 Introduction Building the index 构建索引 Accelerating indexing using Ray 使用 Ray 加速索引编制 Serving

    2024年02月08日
    浏览(20)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包