[问题] 我这样架构方向正确吗? (新手)

楼主: ccu516   2019-05-30 23:28:05
我过去比较用C写韧体, python不太有摸过
最近想要用python写自动程式交易
目前的架构如下
首先我是要用家里的QNAP NAS 架Server
1. 在NAS上跑python 来串接交易平台的 RESTful API 抓取及时价格
2. 将抓到的价格存入MongoDB中供后续分析使用
3. 定时从DB捞资料, 并透过自己写的分析条件trigger买卖(串交易平台API)
4. 透过LINEBOT Developer帐号将价格变动/买卖触发 等资讯Push至自己的Line群组
5. (Optional)架一个网站可以调整简单下单或看分析出来的资讯
有几个问题想请教大大们:
1. 我这样的架构有没有什么问题? QNAP上有没有更方便的APP可以将上面的应用串起来?
2. 之前只写过single task的程式, 想知道在自己架的Server上跑那么多程序,
实际上是怎么work的?
3. 目前还在初期研究阶段, 有没有大大能给些关键字Hint每一个步骤会用到的工具套件
最后最后, 由于自己是上班族, 觉得自己花时间研究不如找个已经会的人带我入门比较快
如果有大大愿意当个家教带我入门 我们可以谈一下教学费
感谢!
作者: zo6596001 (超帅肥宅)   2019-05-30 23:52:00
除了第5点,其他应该用 multithreading 或multiprocessing 就可以跑在同一个程式里了其他就 requests, MySQLdb, line-bot-sdk-pythonrequests 可以拿来收http封包的资料MySQLdb 顾名思义,可以拿来操控MySQL数据库MongoDB 可能要自己想办法解决,我没用过line-bot-sdk-python 刚刚查的,我也没用过https://i.imgur.com/KbGSZiY.png
作者: jiyu520 (不要鲫鱼我)   2019-05-31 00:15:00
trigger买卖的部分, 你要接的应该是live的price-stream回测用db的资料, 真正要交易的时候接即时的去做因为看交易的标的不同, 不同券商可能有不同滑价、价差
作者: froce (froce)   2019-05-31 15:27:00
用台虚拟机或是用docker去隔离环境吧,NAS很多套件都魔改过,到时候你要弄些特别的设定不容易。
作者: Sunal (SSSSSSSSSSSSSSSSSSSSSSS)   2019-06-01 00:25:00
不弄台虚拟主机吗 一个月几百块 省掉电费 搞环境的麻烦
楼主: ccu516   2019-06-01 01:39:00
大大有推荐的虚拟机器平台吗?
作者: adrianshum (Alien)   2019-06-01 19:02:00
先不管用到的技术,这系统有先天上的设计缺陷。你抓及时价格,只能取得当刻的价格,与上次抓取之间的价格变动其实是失去了。对于一个处理“触发价格”的功能而言是莫大的问题。比如你五秒抓一次价格,而该股票在该五秒间成交了十元,十一元,又再十元。你抓及时报价只会看到两次都是十元,这样是触发不到某用户设定了的十一元条件的。
作者: jiyu520 (不要鲫鱼我)   2019-06-01 19:07:00
楼上提出的,可以看策略怎么去写。券商价格有时段内的OHLC,当然timeframe越小甚至往高频走,这问题就会更明显通常挂单在券商那、会有不同的单(order)种类和条件来触发进出场,但也要看券商API是否有对应功能

Links booklink

Contact Us: admin [ a t ] ucptt.com