链接:cnblogs.com/misterchaos/archive/2020/04/06/12650643.html
就要下班了,兵长打开手机,看到弹出的某微信聊天机器人广告便点了进去,于是有了如下故事…
1、用C++编写一个动态库文件,在里面实现行情和交易数据调用接口,将报价数据和K线数据写入数据库中,并从数据库中获取外汇量化系统发出的交易指令。 2、在MT4中编写EA文件,在MT4上不间断运行,从MT4平台实时获取报价和K线数据,并调用动态库写入数据库中,于此同时,不断从数据库中获取交易指令,再调用MT4的交易指令完成交易。 采用此种方法的好处就是兼容性强,只要打开MT4软件运行EA,就可以完成行情和交易接口的获取,也不用管是哪个外汇平台,即使MT4软件升级了也能继续用。缺点就是必须打开一个MT4软件专门获取行情和报价数据,同时每个交易的账户也必须要运行一个MT4软件,比如有10个外汇账户,就必须运行10个MT4软件。交易账户不多的话,运行速度和各方面指标也尚可接受,周末都不用重启或关闭,基本上实现7X24小时不间断运行。 一晃自己的量化系统就运行了几年了,中间也不断进行各种优化,但随着交易账户的不断增加,对软硬件的考验就越来越高了,一台普通的服务器,同时运行10多个账户就感觉有点吃力了,毕竟MT4本身就是一个大型的行情和交易软件,要占用不少软硬件资源,还要加上数据库服务器,现在感觉3、4台服务器都不够用了,网络带宽也开始吃紧,已经到了非改不可的时候了。 对于MT4行情和交易的API接口,自己一直都有耳闻,据说这种API接口,可以直接连接MT4行情和交易服务器,而且可以不用管是哪家外汇平台,只要该平台支持MT4软件即可使用。现在市面上很多跟单系统和跟单平台,就是通过该API接口来实现跟单服务的,但感觉这种API接口应该不是MT4软件开发商推出的,属于第三方软件,甚至有可能就是通过对MT4软件进行逆向分析提取出来的东西,一旦MT4软件升级了,就有可能导致API接口失效。记得以前网上就有通达信的行情和交易接口,可以获取国内A股行情并实现交易,自己当时还付费买了一套回来并使用了一段时间,据说也是逆向分析通达信系统得来的,但用了一段时间后,随着通达信软件和券商后台系统的升级,就无法使用了。 去年初的时候,自己就获取了一套MT4行情和交易接口及相关调用资料,但一直未去深入研究,因为该接口就仅仅是一个DLL文件,需要在Window 的.Net 平台下用C#开发和调用,自己对C#并不熟悉,这种托管DLL用其它的开发语言也不好调用,最主要是当时的重心和精力都放在量化系统和缠论策略的开发和优化上,对这种可有可无非要不可的东西实在无暇兼顾。但想着以后随着账户的不断增加,这种API调用接口肯定要用到,毕竟同时打开几十个MT4软件来实现交易接口太费资源了!自己也曾想到花点钱请别人开发,但想着要和自己的量化系统深度融合在一起,沟通和开发起来也挺麻烦,再加上自己本身就是程序员出身,还是适当的时候自己开发吧!从那时起,闲暇时间自己翻看一下C#的编程书籍,了解一下C#的语言和用法,先为以后的使用打点基础。 上周,将自己几个要完成的开发工作按重要性和紧急性排列出来各种比较后,终于决定将MT4API接口的开发提上日程了,说干就干,在电脑上安装好VS2019后,这个星期就忙着搞开发了。整个接口的需求和流程其实自己已经非常清晰,唯一不足的地方是对VS2019和C#还不熟悉,但开发语言都是相通的,不懂不会的地方就查查书,或者百度及CSDN上搜索一下就好了。 花了两天时间,完成了大致的软件界面,并实现了行情和交易接口的简单调用,成功返回了想要的各项数据,开发工作挺顺利,各项功能正慢慢实现。自己是用真实的交易账户来测试的,想着这样频繁的测试,不断登录和退出,途中还会有不少出错和非法调用,会不会引起外汇平台的警觉,如果把自己的账户封禁掉,那可就麻烦大了,因此马上申请了个模拟账户来测试,结果悲剧了,接口竟然无法登录了,返回Old Version,看来平台的模拟账户后台服务器已经升级了,不再支持这个接口,而真实账户的后台服务器,可能考虑到兼容性的缘故,还没有进行更新,或者还兼容这个接口版本,因此还能使用。记得去年底有一段时间,听说很多跟单系统或跟单平台都无法使用了,就因为MT4软件商强制升级了一次,有的MT4后台服务器已经不再支持这个接口了。想着这样下去也不是办法,因此又开始想办法去找这个接口的最新版本,皇天不负有心人,仅半天时间就找到了一个新的API接口版本,不过这个接口有一点点限制。在这里不得不鄙视一下C#,像C#,JAVA这种开发语言开发出来的托管代码,真的很容易被反编译,简直就和真正的源码看起来没有什么差别,因此很快就被我把限制解除了。 正好这两个星期新冠疫情吃紧,有的小区还被封了,羽毛球馆也不让打球了,因此整个星期几乎没有出门过,就窝在家里辛辛苦苦搞开发了,老骥伏枥,像我这种老程序员了,想不到开发效率还挺高,到了今天周五,就把整套接口完成了。现在回想过来,难点上除了本身对C#进行各种熟悉外,怎么优化速度和算法也花了不少时间,这里就通过缓冲区来实
既然选择Python这个语言,当时是想得到更高的薪资待遇,大家都想提高自己的生活水准。
背景:因为微信公众平台支持的后台服务器只允许为80端口,而本地服务器开发程序与在VPS上部署程序运行,每次无论是使用scp还是ftp进行文件传输无疑是低效的,因此需要一种方法可以方便的在本地服务器调试微信公众平台。有的使用,ngrok,此方法是通过ssh反向代理达到目的。
后台服务器开发中,日志系统是针对运行的程序的检测,或者是后台统计功能的记录。 例如: 要求统计每日用户的访问量,可以通过统计日志的方式实现。 如下代码,自己实现的运行的日志的记录;主要是差错及打印log;代码可以直接整合到工程中直接调用。 package Log_Eio import ( "fmt" "os" "strings" "time" ) const ( DEBUG_FMT = 1 /
开发项目中在编写代码时没有做严格的安全控制,导致攻击者通过接口或相关参数提交有危害的命令,从而让后台进行执行,从而控制整个后台服务器
导读:小时候对掌握中、英、日、阿拉伯等多门语言的人羡慕不已,当时就许下一个心愿「我一定要成为掌握多门语言的男人」。今天,我的梦想终于实现了,我成为了一个程序员,也成为了掌握了多门 (编程)语言的男人-
目前网上优秀的开源游戏服务器框架也不少(当然与web框架比起来就少太多了),但总结起来都各有各的优缺点,下面列出我在选型过程中的一些考量,希望大家能开放的讨论,有不恰当的地方也请指正。 首先是开发语言 目前用于游戏服务器开发的主要应该有以下这些语言: c/c++ 优点: 性能很好 开源框架: skynet底层是C 开发语言是lua,没有客户端库kbengine底层是C++ 开发语言可以使用C#,Python有多个平台的客户端库 C# 优点: 性能很好 开源框架: Scut底层C# 开发语言是 C#、Py
小时候对掌握中、英、日、阿拉伯等多门语言的人羡慕不已,当时就许下一个心愿「我一定要成为掌握多门语言的男人」。今天,我的梦想终于实现了,我成为了一个程序员,也成为了掌握了多门(编程)语言的男人-_-!
小时候经常看局座的节目,得知局座掌握中、英、日、阿拉伯等多门语言 时羡慕不已,当时就许下一个心愿「我一定要成为掌握多门语言的男人」。今天,我的梦想终于实现了,我成为了一个程序员,也成为了掌握了多门 (
最近在工作上需要在微信上开发小程序。作为一个熟练于电脑客户端开发,网页前后台全栈开发,驱动开发,系统底层开发等多年经验的老鸟而言,刚开始接触小程序任务时居然一时有点懵逼,这是任何人面对全新领域时的正常状态,经过一段时间摸索后我很快掌握了小程序开发的基本要领,有关小程序开发的资料很多,但在我看来能够让一个毫无小程序开发经验的人能在短时间内快速上手掌握教程还是不多,因此我想把自己做过的项目展现出来,只要你跟着完成一遍,小程序的开发技巧基本就掌握了,本文能够起到省时省力的效果。
说起编程语言,Python 也许不是使用最广的,但一定是现在被谈论最多的。随着近年大数据、人工智能的兴起,Python 越来越多的出现在人们的视野中。
在移动应用开发方面,Kotlin和Flutter是目前比较火热的两门技术。其中,Kotlin是由Jetbrains研发,后被Google大力扶持,Flutter则是由Google自己独立研发的。从目前Google官方的态度来看,这两门技术都被无限看好,Google也是在它们身上投入了大量的资源。但也正是由于Google的这种态度,导致很多开发者变得迷茫了:我到底是应该学习Kotlin还是Flutter呢?
JVM:Java虚拟机 JRE:Java运行环境,包含了JVM跟Java的核心类库 JDK:Java开发工具,包含了JRE跟开发工具
sudone.com在nginx的反向代理介绍中,提到了异步传输模式并提到它可以减少后端连接数和压力,这是为何?下面就来讲解下传统的代理(apache/squid)的同步传输和nginx的异步传输的差异。 看图:
导语:读书是一生的功课,技术人通过读书实现自我提升,学习优秀技术沉淀。TEG书知道本期特邀腾讯TEG架构平台部专家工程师高向冉、腾讯TEG架构平台部高级工程师黄志海、腾讯TEG基础架构部高级工程师肖攀,为大家带来系统架构方向好书、好文推荐。来看看技术大牛在读什么,收藏优质内容,愿本期书单助您更专业。
大家好,我是Golang语言社区(www.golang.ltd)主编彬哥,本篇给大家转载一篇关于游戏服务器开发都要学什么的文章;主要帮助初学者了解下游戏服务器都涉及到什么知识。
直播程序开发是各类直播APP都不可忽视的核心功能,那么直播程序开发的过程是什么样的呢?
你有没有发现支付宝、银行、淘宝、华为pay等等都是使用指纹支付,为什么指纹验证、面容验证通过它就能通过呢?本篇来说说背后的原理。
将Apache作为LoadBalance前置机分别有三种不同的部署方式,分别是:
APNs:Apple Push Notification server 苹果推送通知服务 苹果的APNs允许设备和苹果的推送通知服务器保持连接,支持开发者推送消息给用户设备对应的应用程序。
不知道是什么时候?也许是春节期间?小程序的绘图api默默新增了两个接口: wx.canvasGetImageData,返回一个数组,用来描述 canvas 区域隐含的像素数据 wx.canvasPutImageData,将像素数据绘制到画布的方法 官方没有发文说明,而是偷偷放在开发文档里,程序员同学真调皮,这两个在花叔看来相当实用的功能,却发布得这么低调,接下来从不同角度说说这是什么。 一.屏显原理 在介绍这两个接口前,需要介绍显示屏显示图片的基础逻辑,显示器屏幕要展现一张图片,会用许许多多像素点并按照矩阵
为什么要写这一篇? 做为一个iOS开发者我没有精力自己实现一套,登陆系统后台,广告系统后台,自己尝试写过身份认证系统,但是忘记密码之类的写的又丑又简陋。同时写后端和app又不能兼顾。
TarsBenchmark(简称tb)旨在帮助开发和测试同学快速debug线上TARS服务,复现逻辑接口bug,支持灵活修改测试用例,同时也可以很轻松完成服务接口的压力测试,帮助开发同学清楚掌握TARS服务性能数据基准。具备如下特性:
现在的后端主流语言无非是 C++、Go、Java、Python这几类,这4个语言是近些年来不同时代不同业务阶段的后端语言开发代表。
该策略是在haproxy处终止/解密SSL连接,并将未加密的连接发送到后端服务器的做法。这意味着haproxy负责解密SSL连接 - 相对于接受非SSL请求而言,这是一个耗时且占用CPU的过程。
最近一段时间在研究后台服务器测试技术,需要对后台服务器的各项性能指标进行实时监控和统计,也由此让我回运维
大家好,我是Golang语言社区(www.golang.ltd)主编彬哥,本篇给大家带来一篇关注手机游戏开发相关的文章。
通常来说负载均衡可分为四层负载均衡和七层负载均衡,而四层负载均衡策略中比较典型的实现方式为LVS负载均衡
热卖云产品3折起,云服务器、云数据库特惠,服务更稳,速度更快,价格更优 https://cloud.tencent.com/redirect.php?redirect=1014&cps_key=6f5
Java在游戏服务器开发中的应用 随着游戏市场的兴起,特别是网页游戏、手机游戏的崛起,对游戏开发技术的需求越来越多。网络游戏开发是一个庞大的体系,总体来说是客户端与服务器端。客户端是玩家接触的游戏图像显示端,服务器是处理游戏运行中的各种数据,由于一台服务器要支持众多玩家的请求,所以服务器的性能高低决定了同一个游戏的用户数量。 我们公司选择使用Java做服务器开发语言,主要原因是:1.Java是跨平台的,方便部署;2.Java是安全的高级语言,可以提高开发效率;3.Java是面向对象的,代码可以重用;4.Ja
我之前分享了两篇文章分别是《科普技术贴:个人开发者的那些赚钱方式》和《绝对干货:供个人开发者赚钱免费使用的一些好的API接口》,教个人移动开发者如何在业余时间做点开发赚点小钱,上次分享的一些开放的API接口其实非常的实用,但是毕竟有些限制,不能自己想做什么就自己做什么,而是别人提供什么,我们才能自己做相应的开发。今天给大家分享的是一些限制级的免费后台供大家开发使用,做一些自己喜欢的app。 何为限制级的免费后台,那就是限制了每月的服务请求次数,在这个限定的次数范围内是免费的。比如每月请求次数在150万次,就
存在问题: 手游越来越火了,听听业内人士的分析,他山之石,多多借鉴,那么手游的服务器到底如何搭建的? 解决方案: 从事游戏服务器开发差不多两年时间,两年间参与了不少项目,学到了很多游戏服务器开发技术,参与过几个不同架构的服务器开发,就随便聊聊游戏服务器开发需要的技术。(以下所指游戏服务器更偏向于手游,因为我对端游和页游开发接触并不多) 一.聊聊服务器开发有哪些东西要考虑。 1.开发语言的选择: 工欲善其事,必先利其器,选择一门适合的开发语法对后期开发有着事半功倍的作用。 业界主要的是c/c++ + Pyt
七层负载均衡:负载均衡器与客户端及后端的服务器会分别建立一个TCP连接。即两次TCP连接。
在众多纷纭的计算机的岗位中,其中有一个岗位叫做“web服务器开发”,就是我们经常说的web后端;也许有过一些工作经验的开发者对于这个web服务器的开发已经很熟悉了,对于他具体需要的干的事情不说了如指掌,也应该是略知一二了,可是对于刚入门的菜鸟来说web后端开发需要干一些什么,需要会一些什么就现的很神秘,那么今天小编就简单的给大家讲解一些做web后端需要会一些什么? 容易引起误会的知识点,就是工作的性质:“服务器开发”一般来讲指的是,web应用程序的服务端否开发,而不是说是具体的web服务器的内部开发(也就是
秒杀架构的设计方案就是一个不断过滤请求的过程,从系统架构层面来说,秒杀系统的分层思路如下。
Java 语言是美国 Sun 公司( Stanford University Network )在 1995 年推出的计算机语言。
Android 测试主要分为3个类型: 单元测试(Unit Test) 区分UI代码和功能代码在Android开发中尤其困难。因为有时Activity既有Controller的功能,又有View的功能。Robolectric是一个很优秀的Android测试框架,它提供了一个Android框架的stub,这样测试运行时实际上是在JVM上运行,而不是在Android平台(比如Robotium和Instrumentation都是在Android平台运行测试),从而提高了速度。另外请参考Gradle 对 Unit
2019马上要到了,过去的一年,你对你的工作是不是还觉得满意?工作和生活有没有给你带来一阵阵的无力感?北漂的生活有没有让你感觉到心力交瘁? 来吧,一起南下吧!来看看改革开放的深圳,来感受多元文化的广州! 在这里,有烤生蚝,有白切鸡,有砂锅粥,有吃不完的海鲜。 在这里,有海边的蓝天白云,有珠江边的小姐姐,有琶醍的灯红酒绿,有天河的恒大主场。 少年,趁着年轻,为自己换个主场吧!加入DNSPod,加入腾讯云! 30岁前,总要为自己,为这个社会,做点什么。不是么? 【后台开发leader】 岗位职责: 根据
单服务器的简单配置通常是考虑客户端SSL连接如何被接收请求的服务器解码。由于负载均衡器处在客户端和更多服务器之间,SSL连接解码就成了需要关注的焦点。
升级微信到最新版本,发现页卡 => 小程序 => 搜索“腾讯视频云”,即可打开小程序Demo:
Openfire 采用Java开发,开源的实时协作(RTC)服务器基于XMPP(Jabber)协议。Openfire安装和使用都非常简单,并利用Web进行管理。单台服务器可支持上万并发用户。所以常常被
在登录一个网站进行访问时由于HTTP协议是无状态的就是说一次HTTP请求后他就会被销毁,比如我在www.a.com/login里面登录了,然后你就要访问别的了比如要访问www.a.com/index但是你访问这个网站你就得再发一次HTTP请求,至于说之前的请求跟现在没关,不会有任何记忆,这次访问会失败,因为无法验证你的身份。所以你登录完之后每次在请求上都得带上账号密码等验证身份的信息,但是你天天这么带,那太麻烦了。那还可以这样,把我第一次登录的信息状态都放在数据库里,下次我一访问,我查一下数据库就知道我登没登陆了,但是频繁查找数据库会给后台服务器造成非常大的压力所以就出现了Cookie,第一次登录就会返回一个Cookie,将一些简单地信息放在Cookie里返回给客户端,然后在客户端保存,每个域名下对应有一堆Cookie,下次我带Cookie来访问就行了。这样做也行但是Cookie很容易被篡改放在客户端并不安全,而且Cookie多了会无形的增加客户端与服务端的传输数据量。所以Session就出现了,Session放在后台服务器,将SessionID返回给客户端作为Cookie的值下次我带Cookie过来通过SessionID来查找Session中的一些登录或其他信息就行了。这样做也挺好。但是如果是集群环境下,那就不行了Session不能跨域也就是说你用www.baidu.com下的SessionID访问www.bilibili.com下的Session是不行的为了解决这个问题我们还得将Session在每台服务器上进行同步这也是一笔巨大的开销。
要实现AI运动计时、计数,要解决主要技术问题有:视频抽帧、视频人体检测、姿态识别、计时计数算法,其中最主要的也是技术前提的便是人体识别检测,实现上面的技术,便是一个完整的AI运动解决方案了。
领取专属 10元无门槛券
手把手带您无忧上云