Quantlab3.5的源代码和数据 | 关于健康、财富,意义的思考
1、数据加载逻辑重构,本地读一个统一的文件夹。不存在的数据,会尝试从服务器读取。——省去大家下载数据的工作,进而专注在策略开发中。
2、策略模板统一化,不需要指定:大类资产配置,轮动,择时或者多策略组合。
之前咱们在Django, Flask和FastApi用哪个框架做后端摇摆过很多次。
我这里再简单总结一下,方便希望做自己量化平台系统架构的同学参考。
由于是AI系列,python无疑是最好的选择。AI技术栈,python生态有明显的优势。在金融量化领域,也是。即便是追求高频,高性能的私募公司,底层使用c++,rust或者go来提升效率,上层仍然使用python追求策略的简洁与交付的效率。
python的web生成也非常成熟。刚说的三大框架,为何我们选择了Django?
其实还是生态,看似起步的时候重一些,但你的功能到一定程度,这些都会只多不少,反而Django帮我们做了不少事情。
Django-ninjia的出现,相当于把FastApi给整合起来了。因此FastApi就不需要了。而Flask,当我们用用户管理,ORM, Admin这一套整合完之后,发现代码结构越发像Django,而且还花了不少功夫。——这一切,Django是开箱即用的。
今天我们讲的Django-AllAuth,就是简化了用户注册,登录,修改密码之类,不难但细节不少。
官方文档如下:https://docs.allauth.org/en/latest/
使用: pip install django-allauth进行安装。
配置过程比较简单,熟悉Django的同学很快就能用起来:
1、加入Apps列表:
INSTALLED_APPS = [ ... # The following apps are required: 'django.contrib.auth', 'django.contrib.messages', 'allauth', 'allauth.account',
2、加入中间件:
MIDDLEWARE = ( "django.middleware.common.CommonMiddleware", "django.contrib.sessions.middleware.SessionMiddleware", "django.middleware.csrf.CsrfViewMiddleware", "django.contrib.auth.middleware.AuthenticationMiddleware", "django.contrib.messages.middleware.MessageMiddleware", # Add the account middleware: "allauth.account.middleware.AccountMiddleware",
3、加入URL:
urlpatterns = [ ... path('accounts/', include('allauth.urls')), ... ]
一个完整的用户注册功能就完成了,以下就是django-allauth提供的功能,包括:注册,登录,登出,重新激活,修改密码等等。
界面简陋,但功能是完全可用的:
写过完整的用户系统的同学会知道,如果你在flask要搭建这个流程,且要花一番功夫,调试,还容易出bug。
剩下的,我们使用bootstrap来美化一下这些页面就可以了。——这也体现在django生态的厉害之处!
从github下载Djanto-Allauth的原码,把templates/account的下目录拷贝到咱们新创建的myaccount App下。
美化以后界面如下:
django-allauth,总体感觉是非常好的,你只自己真正要开发一个应用的时候,才知道看似不难的事情,有多少细节。
而django-allauth没有提供个人主页,因为这个需求太个性的,实现起来不难,但基本就是一份工作量。而注册,登录,改密码,发邮件,激活邮件,几乎都是这样的一份代码。挺麻烦的,几天的工作量吧,而借django-allauth,小半天就搞出来了。
大家看下基础效果:
吾日三省吾身
重启Django重启后端,有一个很深的感悟。
“简单”的事情重复做。
世界的规律,很大程度就是重复。比如细胞,就是复制;雪花也是分形。自然法则就是“物竞天择,适者生存”——突变+筛选。如果简单,去如果繁荣的生态。
做技术也一样,不要今天搞搞这个,明天搞搞那个,选好型,有些困难需要跨过去,就形成闭环了。
做金融量化架构的角度,小团队的话:
python+Django+mysql+mongo+bootstrap+jquery。我把用了好久的Dagster都打算弃掉,直接使用django-apscheduler就好。
——如无必要,不加实体。
保持简单,专注。
发布者:股市刺客,转载请注明出处:https://www.95sca.cn/archives/103503
站内所有文章皆来自网络转载或读者投稿,请勿用于商业用途。如有侵权、不妥之处,请联系站长并出示版权证明以便删除。敬请谅解!