找回密码
 注册
搜索
查看: 6487|回复: 70

打算开发一个股票自动交易系统(Algorithmic trading)

[复制链接]
发表于 2019-3-18 08:46 AM | 显示全部楼层 |阅读模式


打算开发一个股票自动交易系统(Algorithmic trading)。
一是因为盯盘炒股太累,
二是人性有弱点,因为贪婪或恐惧,常常会犯习惯性错误。

自动交易系统是计算机按规则自动进行买卖,无须人的介入。

交易规则,可以很简单,也可能很复杂,这里先从简单开始。
比如,我们可以先建立一个超买超卖模型(overbought-oversold model),发现超买状态时卖出,发现超卖状态时买入。
第一步:我们可以先定义超买、超卖。
第二步:定量化超买、超卖状态的计算。
第三步:制定交易规则,设置可调参数。
第四步:回测(back test), 优化参数。
第五步:评估
第六步:试运行(forward test).
第七步:到第四步,循环、往复。

再如,有人喜欢炒底,有人喜欢追势,我们可以试图建立炒底追势模型。
首先,如何判断底已经形成。
同样:如何判断势,用何种指标,量化涨势已经形成。
制定买进条件,
制定卖出条件,
设置可调参数,
进入之前的四、五、六、七循环。

一个自动交易系统需要回测至少两年。
1)回测结果不赚钱,别用,一分钱也不亏。
2)如果 回测的 利润因子满意(2左右),胜算率在70%左右,峰谷跌幅不超过15%,是一个不错的系统的话,我觉得值得尝试 (forward test)。
尝试几个月,满意,就继续,不理想就停,也不会亏钱。

这个项活动公开、透明,数据可查,成果共享。
任何人都可以参与这项活动,出出主意,想想办法。
你也可以用胡币投资。
胡同里大佬们的胡币堆积如山,如果不投资,也不做慈善,就变成了“守财奴”。
我号召大佬们给这个项目注入资金。
比如,注资5千胡比,希望看到可行性论证(feasibility)。等到我们通过了可行性论证时,连本带息还给您。
又如,注资1万胡比,希望看到Phase I。到了Phase I,连本带息还给您。
再如,注资1万胡比,希望看到Phase II。到了Phase II,连本带息还给您。
您也可以通过提出期望值的方法注入资金。
比如,注资1万,希望回测(back test)的盈亏比,超过胡同的《SPY竞猜》多数胜模型,或期望PF达到1.5
如果达到了这个目标,连本带息还给您。
如果达不到,就只能把50%的本金送还了,您损失50%。

恳求胡同中央银行(源济、ysc...)注资,量化宽松,增加胡币流动性。

任何一个项目的开发,都有可能成功,也有可能失败,但不去尝试,永远不会成功。
这是个耗时业余爱好,希望三个月有眉目。
Robotics.png

评分

1

查看全部评分

发表于 2019-3-18 09:36 AM | 显示全部楼层
我曾经研究过一段时间的交易算法,后来发现不同时期需要不同的算法,即便是抄底也是如此。股市的表现还是不太一致的。一把钥匙没法开所有的锁。你打算怎么解决这个问题呢?

评分

1

查看全部评分

回复 鲜花 鸡蛋

使用道具 举报

发表于 2019-3-18 02:05 PM | 显示全部楼层
以本人多年炒股经验看,系统成功的概率与年回报预期绝对成反比,年回报预期从0到10%,对应系统成功概率从100%到0,大概回报预期超过5%,系统基本不会成功。

评分

1

查看全部评分

回复 鲜花 鸡蛋

使用道具 举报

发表于 2019-3-18 05:31 PM | 显示全部楼层
I just developed one, you can contact me.  Performance is way better than myself.

评分

1

查看全部评分

回复 鲜花 鸡蛋

使用道具 举报

发表于 2019-3-18 05:33 PM | 显示全部楼层
algo 发表于 2019-3-18 05:31 PM
I just developed one, you can contact me.  Performance is way better than myself.

from 2018-03-18 to today, my gain is 236%, but qqq only 6%
回复 鲜花 鸡蛋

使用道具 举报

发表于 2019-3-18 05:36 PM | 显示全部楼层
algo 发表于 2019-3-18 05:33 PM
from 2018-03-18 to today, my gain is 236%, but qqq only 6%

sorry, my gain is 136%, should reduce 100

评分

1

查看全部评分

回复 鲜花 鸡蛋

使用道具 举报

 楼主| 发表于 2019-3-18 07:18 PM | 显示全部楼层
mitwkwk 发表于 2019-3-18 09:36 AM
我曾经研究过一段时间的交易算法,后来发现不同时期需要不同的算法,即便是抄底也是如此。股市的表现还是不 ...

mitwkwk明鉴。相信在第四和第五步,我也会碰到同样的问题。

1)一个系统很可能有三个以上的参数。在高维空间,很可能出现多个吸引域。
一组参数对一个吸引域最佳,这就是一个模; 另一组参数对另一个吸引域最佳,这就是另一个模型。
如果一个系统只提供了第一组 参数(第一把钥匙),可是市场其实处在另一组参数的吸引域内,到达不了第一种赚钱的状态,导致亏损。这种情况,你需要第二把钥匙。

2)如果你有两个线性无关的独立模型,你可以建立一个系统把它们组合起来。前提是你找到了,谁在什么条件下表现比另一个模型好。这样做回避了 “一把钥匙没法开所有的锁”的问题。
回复 鲜花 鸡蛋

使用道具 举报

 楼主| 发表于 2019-3-18 07:36 PM | 显示全部楼层
黄老泻 发表于 2019-3-18 02:05 PM
以本人多年炒股经验看,系统成功的概率与年回报预期绝对成反比,年回报预期从0到10%,对应系统成功概率从10 ...

“回报预期” 是衡量一个系统好坏的一个指标。如果一个系统给出“回报预期” 高,但实现不了,这往往是其他衡量指标没有达标,导致该系统不现实。

比如说“峰谷跌幅”是描述一个系统进入亏损阶段的表现。 进入亏损阶段之前盈利曲线有个峰值,亏损阶段结束是个谷底,之差就是“峰谷跌幅” (Maximum drawdown)
一个系统虽然 “回报预期” 很高,但是 如果“峰谷跌幅”过大,在没有来得及赚钱时,把本金亏了,自然就没有赚钱机会了。

如果黄老有一个自动交易系统,不妨用历史数据,回测以下盈利曲线,综合衡量一下。
回复 鲜花 鸡蛋

使用道具 举报

发表于 2019-3-18 07:43 PM | 显示全部楼层
我有兴趣投资

评分

1

查看全部评分

回复 鲜花 鸡蛋

使用道具 举报

 楼主| 发表于 2019-3-18 07:46 PM | 显示全部楼层
algo 发表于 2019-3-18 05:31 PM
I just developed one, you can contact me.  Performance is way better than myself.

Congratulation! Your yield, from 2018-03-18 to today, reaches 136%, that's amazing. Do you mind sharing your earning curve? Thanks.
回复 鲜花 鸡蛋

使用道具 举报

 楼主| 发表于 2019-3-18 08:02 PM | 显示全部楼层
本帖最后由 xinxing 于 2019-3-18 08:21 PM 编辑
shibainu 发表于 2019-3-18 07:43 PM
我有兴趣投资


非常感谢老大的支持。 你可以设定你的投资目标,提个要求, 你是stakeholder,我会朝你的方向努力。你若转帐5千胡币给我, 等到我们共同实现了预期目标,我奉还6千给您。
回复 鲜花 鸡蛋

使用道具 举报

 楼主| 发表于 2019-3-18 09:51 PM | 显示全部楼层
言归正传,先说概念。

只看股票的价格,我看不出名堂:涨不知道涨到何时为止,跌不知道跌到多少是底。胡同里有几位裸图大师,我学也学不来,干脆想别的方法。

数学上有个“归一化方法”是把有量纲表达式变为无量纲表达式,便于处理。类似的, 数据标准化方法(Data Normalization Method)是将数据按比例缩放,使之落入一个小的特定区间。

那么,如何把股票的价格,作个变换,使之落入一个小的特定区间?

这件事,有人早就做过了,起名叫 RSI. 这个指数能帮助计算出超买、超卖状态。

The relative strength index (RSI) is a momentum indicator that measures the magnitude of recent price changes to evaluate overbought or oversold conditions in the price of a stock or other asset. The RSI is displayed as an oscillator (a line graph that moves between two extremes) .


Traditional interpretation and usage of the RSI is that values of 70 or above indicate that a security is becoming overbought or overvalued and may be primed for a trend reversal or corrective pullback in price. An RSI reading of 30 or below indicates an oversold or undervalued condition.

下面,我就找只股票,具体算RSI,看看能不能做成一个简单的自动交易模型。
回复 鲜花 鸡蛋

使用道具 举报

发表于 2019-3-18 09:55 PM | 显示全部楼层
我建议, algorithm and automated trading system/framework should be a separate topic. I am more interested in the 2nd part at this moment because algorithm needs to be updated for different situations. but trading system/infrastructure can stay the same

评分

1

查看全部评分

回复 鲜花 鸡蛋

使用道具 举报

 楼主| 发表于 2019-3-18 10:16 PM | 显示全部楼层
littletiger 发表于 2019-3-18 09:55 PM
我建议, algorithm and automated trading system/framework should be a separate topic. I am more inte ...

你的建议很好,我这就采纳。我会通过数据采集,交互协议,买卖信号的使用,下单操作等技术细节,给出自动交易的平台和框架 “automated trading system/framework”。
Tell me  what you need, I will do my best tomorrow evening. Good night now.
回复 鲜花 鸡蛋

使用道具 举报

发表于 2019-3-18 10:20 PM | 显示全部楼层
xinxing 发表于 2019-3-18 07:46 PM
Congratulation! Your yield, from 2018-03-18 to today, reaches 136%, that's amazing. Do you mind s ...

over all performance 2018-04-18 spy qqq me --   99.89%  99.28% 101.16%
over all performance 2018-05-18 spy qqq me --  100.31%  99.89% 138.55%
over all performance 2018-06-18 spy qqq me --  102.24% 105.28% 169.71%
over all performance 2018-07-18 spy qqq me --  103.91% 106.79% 187.35%
over all performance 2018-08-18 spy qqq me --  105.61% 107.26% 217.39%
over all performance 2018-09-18 spy qqq me --  106.97% 109.06% 229.90%
over all performance 2018-10-18 spy qqq me --  102.18% 103.30% 220.11%
over all performance 2018-11-18 spy qqq me --   99.49%  99.91% 218.56%
over all performance 2018-12-18 spy qqq me --   94.30%  93.90% 212.30%
over all performance 2019-01-18 spy qqq me --   97.22%  98.57% 211.16%
over all performance 2019-02-18 spy qqq me --  101.44% 102.13% 226.79%
over all performance 2019-03-18 spy qqq me --  104.00% 106.38% 236.23%

[返回顶部]
回复 鲜花 鸡蛋

使用道具 举报

发表于 2019-3-19 08:33 AM | 显示全部楼层
比如,我们可以先建立一个超买超卖模型(overbought-oversold model),发现超买状态时卖出,发现超卖状态时买入。
第一步:我们可以先定义超买、超卖。
第二步:定量化超买、超卖状态的计算。
第三步:制定交易规则,设置可调参数。
第四步:回测(back test), 优化参数。
第五步:评估
第六步:试运行(forward test).
第七步:到第四步,循环、往复。


这样的操作思路是假定当下行情是盘整。

一个好的交易系统或方法,最基本的是可以区分所操作级别上,是趋势 (包括趋势反转)还是盘整。大钱都是从趋势中 buy & hold 挣来的。一个成功的周线3买/卖,一年的利润就出来了。所以最简单有效的是在确认操作级别之后(周,日,小时)找
(1) 趋势反转
(2)趋势形成的初期
(3)趋势形成之后的第一次回调

评分

3

查看全部评分

回复 鲜花 鸡蛋

使用道具 举报

发表于 2019-3-19 08:59 AM | 显示全部楼层
坐等专家们讨论结果!

评分

1

查看全部评分

回复 鲜花 鸡蛋

使用道具 举报

发表于 2019-3-19 09:01 AM | 显示全部楼层
难道胡币开始值钱啦?!看来要好好攒点了!

评分

1

查看全部评分

回复 鲜花 鸡蛋

使用道具 举报

发表于 2019-3-19 09:03 AM | 显示全部楼层
algo 发表于 2019-3-18 05:36 PM
sorry, my gain is 136%, should reduce 100

是不是下载了你的软件,设置下参数,但怎样和券商账户对接呢?
回复 鲜花 鸡蛋

使用道具 举报

发表于 2019-3-19 10:06 AM | 显示全部楼层
mojideheng 发表于 2019-3-19 09:03 AM
是不是下载了你的软件,设置下参数,但怎样和券商账户对接呢?

yes. but only work on Robinhood for now
回复 鲜花 鸡蛋

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

手机版|小黑屋|www.hutong9.net

GMT-5, 2024-11-27 04:33 AM , Processed in 0.049106 second(s), 18 queries .

Powered by Discuz! X3.5

© 2001-2024 Discuz! Team.

快速回复 返回顶部 返回列表