Vapor升级到Vapor3的时间恰巧赶上WWDC,本来想从美国回来就开始写一些关于Vapor3的文章,但是WWDC信息量太大了,直到现在才转过来写一点关于Vapor的东西。...这篇文章主要介绍如何使用Fluent查询数据,后面我会补上如何配置相关的教程。...Fluent为我们提供了一个Model类, MySQLModel、 PostgreSQLModel、SQLiteModel均继承自这个类。...现在有了这个QueryBuilder了,下面就可以利用它来进行查询操作了: 为了简化对问题的理解,这里提供一个最简单的Model来验证: import FluentMySQL import Vapor...总结 vapor3的查询还是和vapor2有着比较大的差异的,之前vapor2的一个Model一统江湖的特点在vapor3上也没有得到体现,目前各个子模块也都还在开发中,希望会越来越好用吧。
yfinance yfinance国内不能使用,可以使用tushare、akshare代替 import yfinance as yf # 输入股票代码 stock_symbol = 'AAPL'...ak df = ak.stock_zh_a_hist("001379", start_date="2024-02-01") print(df) pip install tushare,tushare需要使用...start_date='20210101', end_date='20210131') # 打印数据 print(df.head()) 账户接入 券商的api接口通常不会公开,你需要直接与券商进行沟通和合作...国内提供交易接口的券商 招商证券 华泰证券 中信证券 国泰君安 backtrader pip install backtrader class MyStrategy(bt.Strategy):...QMT、Ptrade、很多券商都有自己的量化交易服务
,我们使用了Fluent NHibernate的Mapping方式代替XML配置。...使用Fluent NHibernate的最大好处是降低了出错的机会,因为Fluent Nhibernate的配置是使用C#来编写,可以智能感知,而且还能编译,不像原始的XML配置,写错了都不知道。...对于多对多的关系,把两个类对应的表名进行排序,将小的排前面,然后将两个表名连接起来,中间使用“_”分割。...进行处理。...colName = propertyName.ToDatabaseName() + "_ID"; instance.Column(colName); } } 对于4SubClass
API接口: https://blockchain.info/rawtx/f4184fc596403b9d638783cf57adfe4c75c605f6356fbc91338530e9831e9e16...client = new QBitNinjaClient(Network.Main); uint256 txid = uint256.Parse("f4184fc596403b9d638783cf57adfe4c75c605f6356fbc91338530e9831e9e16...NBitcoin中提供了一个Transaction类,所有与交易有关的信息都在这里了,最重要的信息是交易的输入项(inputs)和输出项(outputs)。 ?...(inputs)来自于之前的某笔交易的输出(PrevOut)。...这个例子中的交易是区块高度为170的区块中的第二笔交易,所以也可以用下面的代码直接找到这笔交易。
用Vapor连接数据库是一件令人兴奋的事,本篇就来介绍如何使用Vapor来连接PostgreSQL数据库,将数据持久化。...在上一篇Vapor奇幻之旅(05 Fluent)中,我介绍了如何使用Fluent创建数据模型,并在自带的内存数据库中进行增删改查操作。...而在web应用的使用中,对数据的持久化是必不可少的,于是我们就需要通过程序来连接数据库进行数据操作,这样整个系统才算基本完整。 什么是PostgreSQL?...PostgreSQL Provider为我们提供了连接到数据库的driver,就像pgAdmin 4一样使我么你的程序能够连接到数据库进行相应的操作。...(04Routing) Vapor奇幻之旅(05 Fluent) Vapor奇幻之旅(06 PostgreSQL) Vapor奇幻之旅(07 连接服务端PostgreSQL) Vapor奇幻之旅
支持sqlite数据库,也就是说在没有任何数据库配置的情况下,可以通过Fluent Provider中的内存数据库来快速加载SQLite数据库,这样做的好处是可以轻松的进行接口测试。...目前Vapor支持的数据库如下: 数据库类型 Key Package Class 是否来自官方 Memory memory Fluent Provider Fluent.MemoryDriver Yes...Vapor 3的开发,相信不久后就可以有更多的数据库类型支持了,而且由于Fluent的抽象的特性,只要有相应的驱动,适配任何数据库我想只是时间问题。...删除刚刚插入的数据 由于默认的数据库是基于内存加载的,重新运行程序则会清空,如果想要保存数据到服务器,你需要使用持续化的数据库,如MySQL、PostgreSQL以及MongoDB,后面我会对这几个数据库操作一一介绍...(05 Fluent) Vapor奇幻之旅(06 PostgreSQL) Vapor奇幻之旅(07 连接服务端PostgreSQL) Vapor奇幻之旅(08 连接服务端MongoDB) Vapor
"3.0.0"), .package(url: "https://github.com/vapor/fluent-mysql.git", from: "3.0.1"),..."3.0.0"), .package(url: "https://github.com/vapor/fluent-mysql.git", from: "3.0.1"),...build 3 启动服务 vapor run //可以看日志 nohup vapor run & //需要两个回车键,让后端运行 4 退出ssh连接 exit //需要回车 ?...响应大概是0.4s左右 后续改进 1 邮件通知,将错误日志参数等信息以邮件方式发送给相关开发人员 2 目前cache使用的mysql,后续修改为redis来减缓mysql压力 4 后续添加按照组进行日志查看监控...5 按照组进行人员管理 最后附上地址 [GitHub地址](git@github.com:skeyboy/LogOnline.git)
在前几篇中我介绍了PostgreSQL和MongoDB的连接: Vapor奇幻之旅(05 Fluent) Vapor奇幻之旅(06 PostgreSQL) Vapor奇幻之旅(07 连接服务端PostgreSQL.../vapor.git", .upToNextMajor(from: "2.1.0")), .package(url: "https://github.com/vapor/fluent-provider.git...xcode 对于已有的项目进行更新即可 $ vapor update 2、、在Config+Setup.swift中添加provider import FluentProvider import MySQLProvider...总结 本篇介绍了怎么在ubuntu系统上安装和配置MySQL, 如何配置远程访问服务端的MySQL数据库,如果使用项目连接MySQL数据库。...(05 Fluent) Vapor奇幻之旅(06 PostgreSQL) Vapor奇幻之旅(07 连接服务端PostgreSQL) Vapor奇幻之旅(08 连接服务端MongoDB) 希望你对我的教程能够喜欢
本篇介绍如何用vapor连接另一种数据库Mongodb 安装MongoDB 首先付上官网的安装教程:安装mongodb,这个是社区版,由于企业版是收费的,就先来个社区版以供测试使用。...在包管理系统中插入公钥: $ sudo apt-key adv --keyserver hkp://keyserver.ubuntu.com:80 --recv 2930ADAE8CAF5059EE73BB4B58712A2291FA4AD5...(url: "https://github.com/vapor/mongo-provider.git", majorVersion: 2) swift4: .package(url: "https://...由于mongodb的Mac版对APFS支持并不好,我并没有安装在我的Mac上,等待后续版本更新后我会进行相应的补充。...(05 Fluent) Vapor奇幻之旅(06 PostgreSQL) Vapor奇幻之旅(07 连接服务端PostgreSQL) Vapor奇幻之旅(08 连接服务端MongoDB) Vapor
如果你想尝试使用swift来进行web开发,从现在开始吧。...vapor也在一个月前支持了swift4,又到了一个新的境界。 最近购入一个阿里云实例,开始在上面玩玩被我冷落的vapor,作为一个能够跟上苹果脚步更新的服务端库,我也没有理由落下脚步。...也许你听说过swift也能写服务端,但是没有去尝试或深入,也许你作为一个ios开发者从未进行过服务端开发,那么现在是时候进行一下尝试了,因为你可以用vapor来快速构建你的网站和web应用了。...: API --template=api 使用Fluent数据库提供json的api Web --template=web 使用leaf模版创建的html网站 Auth --template=auth...奇幻之旅(05 Fluent) Vapor奇幻之旅(06 PostgreSQL) Vapor奇幻之旅(07 连接服务端PostgreSQL) Vapor奇幻之旅(08 连接服务端MongoDB)
在Vapor奇幻之旅(02部署)一篇中,我介绍了如何在ubuntu上部署并运行vapor项目,这篇文章我来讲讲怎么样来上手开发Vapor项目。...作为一个服务端程序,可以做的事情包括: 提供接口供客户端访问 提供网页供浏览器访问 处理前端的请求,包括处理业务和提供数据 连接数据库对数据进行操作 安全相关,如加密解密 websocket 接入其他服务...这个package包含的所有模块都可以被使用。...Cache 提供内存级别的缓存,也可以通过引入Fluent Provider或RedisProvider来提供本地数据库级别的缓存。...级别的数据库和MySQL,引入这个package则会默认依赖上一个SQLite的模块,如果想要支持更多的库则添加相应的provider就可以,下面是现有的provider: mysql-provider fluent-provider
中衡量交易策略的表现。并将开发一个简单的动量交易策略,它将使用四种资产类别:债券、股票和房地产。这些资产类别的相关性很低,这使得它们成为了极佳的风险平衡选择。...趋势跟踪或时间序列动量 (TSM) 是在单一工具上使用这些策略的另一个名称。我们将创建一个基本的动量策略并在 TCS 上对其进行测试以查看其性能。...4) ax0 = fig.add_subplot(gs[:2, :4]) ax1 = fig.add_subplot(gs[2:, :2]) ax2 = fig.add_subplot(gs[2...所以我们还可以通过在接近顶部时使用止损或追踪止损来退出交易,而不是在15日线图下跌或持平时再进行操作。 投资组合分析 到目前为止,我们已经用Python创建了一个交易策略。...总结 通过分析和绘制的所有数据进行资产配置,可以建立一个投资组合,极大地改变基础投资的风险特征。还有很多我没有提到的,但可以帮助我们确定交易策略价值的起点。我们将在后续文章中添加更多的技术性能指标。
1.首先,你要有一个EA,必须要有以ex4为扩展名的,如果只有mq4文件的话,就要用MetaTrader自带的编辑器MetaEditor打开,将mq4通过编译(compile)并且要不出现错误,才能在原存放...mq4的文件夹下面得到一个同名的ex4文件。...2.将这个ex4文件复制到MetaTrader 4所在的文件夹下面的experts文件夹下, 比如:D:\Program Files\ACTC MetaTrader 4\experts,关闭并重新打开MetaTrader...4。...3.在“导航”下面的“智能交易系统”下面右键点击你想要使用的EA, 这里以我的10点盈利系统举例,点“附加到图表”,如: 4.将会出现下面的弹出窗口: 特别要注意这里的选择,如果没有钩选“允许实时自动交易
背景 学校的个人账号只能在一台设备上进行认证联网,但是我们使用的 GPU 服务器经常需要访问互联网,在服务器上认证之后我们自己的电脑就会掉线,所以可以通过代理的方式让服务器通过我们自己的设备进行联网,解决这个问题...之后会生成一个配置文件 proxychains.conf) make -j make install make install-config 配置 进入安装目录找到配置文件 proxychains.conf,进行编辑...使用 在想要代理网络的时候就在命令前加上 proxychains4 就可以了,例如 proxychains4 curl cip.cc proxychains4 python main.py troubleshoot...在使用的时候报错找不到 proxychains.conf 的,基本上都是编译的时候没有填绝对路径而是填了相对路径,用 make uninstall 以及 make clean 把刚刚生成的东西给删了,...', clientSecret: 'eb79d9acd4dd21ee85de8fde1f1766a6108e8836',
我使用的系统环境是 Ubuntu 16.04,这里的教程理论上来说在Ubuntu 14.04和16.10上均适用: 下面是配置服务器的步骤: 安装配置Nginx $ sudo apt-get update...$ sudo apt-get install nginx 安装完Nginx后需要配置防火墙,如果不用防火墙也没有问题,作为练习使用可以关闭防火墙。...vapor run在服务器上运行web应用时,我们会发现命令行不能继续进行其他操作,如果使用ctr+c退出当前操作或者关闭控制台,则不能继续访问HelloVapor程序,这是因为退出的时候我们的web应用的进程也随着一起关闭了...Trouble Shooting 一步一步调试,运行成功再进行下一步 如果不成功,回滚到可以运行的配置,逐步添加配置来测试 在服务器上使用template创建应用会显示404页面,因为template还没有更新...(04Routing) Vapor奇幻之旅(05 Fluent) Vapor奇幻之旅(06 PostgreSQL) Vapor奇幻之旅(07 连接服务端PostgreSQL) Vapor奇幻之旅
Beautifulsoup4 导入模组 from bs4 import BeautifulSoup import requests as req Beautifulsoup4 美化 HTML 代码 #...设定网址 url = "https://k5l.cn/" # 获取网页html r = req.get(url) # 导入 html 进入 beautifulsoup4 soup = BeautifulSoup...(r.text, features="html.parser") # 美化 html 代码 print(soup.prettify()) Beautifulsoup4 获取 title 标签 # 设定网址...url = "https://k5l.cn" # 获取网页html r = req.get(url) # 导入 html 进入 beautifulsoup4 soup = BeautifulSoup...(r.text, features="html.parser") # 获取 title 标签内部文字 print(soup.title.text) Beautifulsoup4 获取网页第一个超链接
TCP/IP连接 peer 用于本地连接,获取客户端操作系统的用户名,校验是否匹配数据库的用户名 ldap 使用LDAP服务验证 radius 使用RADIUS服务验证 cert 使用SSL客户端证书验证...pam 使用系统提供的Pluggable Authentication Modules (PAM)服务校验 bsd 使用系统提供的BSD服务校验 auth-options =号连接的键值对,用来配置校验方法...执行以下命令就可以: $ su - postgres $ psql postgres 这样就可以进入postgres数据库进行操作了 2、远程连接时出现 could not connect to server...关于Vapor其他知识,可以参考以下文章: Vapor奇幻之旅(01开始) Vapor奇幻之旅(02部署) Vapor奇幻之旅(03上手) Vapor奇幻之旅(04Routing) Vapor奇幻之旅...(05 Fluent) Vapor奇幻之旅(06 PostgreSQL) Vapor奇幻之旅(07 连接服务端PostgreSQL) Vapor奇幻之旅(08 连接服务端MongoDB) Vapor
,如使用auth中间件来校验token,验证数据等。...Host 使用host可以指定某个主机的请求,做分布式的同学你懂的。...路由的基本使用就介绍到这里,如果有遗漏或者不清楚的地方请提醒我补充,希望能对你有所帮助。...关于Vapor其他知识,可以参考以下文章: Vapor奇幻之旅(01开始) Vapor奇幻之旅(02部署) Vapor奇幻之旅(03上手) Vapor奇幻之旅(04Routing) Vapor奇幻之旅...(05 Fluent) Vapor奇幻之旅(06 PostgreSQL) Vapor奇幻之旅(07 连接服务端PostgreSQL) Vapor奇幻之旅(08 连接服务端MongoDB) Vapor
Experimentation with jMetal 本文以Jmetal官网文档为基础,结合自身理解 链接如下 Jmetal 4+ 使用指南一 Jmetal 4+ 使用指南二 如果你还不了解NSGA-II...选择要应用的测试套件test suit和质量指标quality indicator后,我们对每个实验进行了多次独立运行,然后我们分析了结果 使用相关的Setting对象对算法的参数进行设置。...如果想使用不同的参数,则需要每次在运行的时候进行修改。这很麻烦,我们想要使用更简单的方法重用这些设置。...可以使用构造函数的方法(第22-24行),也可以使用setProblem()的方法单独进行设置。...The jmetal.experiments.Main class 关于Main class 的使用和Jmetal 4+ 使用指南二基本相同,唯一区别在于需要事先指定算法 如NSGA-II 可以传入一个参数
使用maven引入相关的jar com.belerwebgroupId> pinyin4jartifactId>...2.5.1version> dependency> 创建Pinyin4jUtil package com.os.core.util.solr; import net.sourceforge.pinyin4j.PinyinHelper...; import net.sourceforge.pinyin4j.format.HanyuPinyinCaseType; import net.sourceforge.pinyin4j.format.HanyuPinyinOutputFormat...mapList.add(onlyOne); } return mapList; } /** * 解析并组合拼音,对象合并方案(推荐使用...s; temp.put(str, 1); } } // 保存组合数据以便下次循环使用
领取专属 10元无门槛券
手把手带您无忧上云