-
Notifications
You must be signed in to change notification settings - Fork 27
/
README.TW
135 lines (90 loc) · 4.53 KB
/
README.TW
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
申明
=====
本程式,對任何交易損失一概不負責,系統本生可能存在錯誤,請自行修改
這是什麼?
==========
這是一組手稿程式,可以幫您交易任何的金融商品,現在我只有在期指的商品上測試(TFX),
現在的版本已經可以運作了,目前,回測的功能很簡陋,目前不支援 tick 的模式,只有時間的方式,
也沒有最佳化的功能,整個設計的邏輯,就是KISS的原則(Keep It Simple & Stupid),盡可能的簡單化,
整個交易系統核心,不包含空行及程式註解不到三百行。
我們盡可能的讓策略程式語法和 Easy Language 一樣,方便您可以移植在Trade Station 上的現有的程式
為什麼要用?
=============
因為我們Open Source ,您可以看到每一行程式碼,跟自己錢有關係的事情,你能放心交給盜版的軟體嗎?
或是要付出龐大的費用忍受三天兩頭不穩定的更新嗎?不確定,不穩定,盜版,不知道什麼時候出現漏洞
就像是微軟的IE一樣,有漏洞,可是不知道什麼時候會修,這樣的情形,你敢出門嗎?敢出國嗎?
專案網址
==========
http://github.com/terryh/autotrader
如何使用?
==========
如果您想幫忙開發,您必須有 Python 的開發環境,大多的 Linux 都已經有安裝了,在 Windows 上,
您可以到這裡下載 http://www.python.org/ ,pywin32 http://sourceforge.net/projects/pywin32/files/
以後會作 AutoTrader 的 Windows 的安裝包,及執行檔,給使用者下載
執行方式,請到 Windows CMD 模式下執行
autotrader.py -m TFX.csv strategy.py
這樣就會執行您的策略 strategy.py(要叫什麼名字,您自己取),用的歷史資料檔是 TFX.csv,
用預設的時間回溯
autotrader.py --pov=200 --tax=1000 --start=2009-09-01 -m TFX.csv strategy.py
這會回測您的策略程式由時間 2009-09-01 開始,到最後,也可以指定 --end=,格式同--start= 一樣,
也可以同時使用
pov 指的是,每點的金額(台指是200元),tax 指的是,每一筆交易所需的稅金,必須同時都有指定,回測才
會計算金額,不然都只是算點數
要即時監控市場,執行策略
autotrader.py -m TFX.csv -q R:\quote.txt strategy.py
TFX.csv 是您要參考的歷史資料,預設回溯300根,及時監控的 TFX.csv 記得不要太大,一般留您需要
回溯的資料亮就可以了可以加快速度,格式您可以參考TFX.csv(台指期的範例資料)
您可以用 --help 來看到更多的參數,預設是1秒查詢市場一次,quote.txt 則是報價文字介面檔,
目前只支援 DDE,AutoTrader 有內建 DDEClient 的程式,設定好 DDESERVERS 後,執行
ddeclient.py ,就可以一直更新報價了,目前只支援,時間,市價,累計成交量,所以您要知道,
您的DDE 報價源的這三個欄位的資料
DDEClient 的執行範例
ddeclient.py --config=mydde.py R:\quote.txt
mydde.py 是我 DDE 報價源的設定,R:\quote.txt 則是我輸出到 memory disk 的報價檔,要給 AutoTrader
用的, 目前 ddeclient.py 如果,要支援同商品,多個報價源,請利用 Excel 在做中介,mydde.py
(名字可以自己取,日盛的DDE當範例) 的內容,#字號後面的,都是註解,DDESERVERS 只有第一個報價源
有效
#!/usr/bin/env python
# -*- coding: utf-8 -*-
DDESERVERS = [
{
'server': u'DDEEXCEL',
'topic': u'FUTURETXFA0',
'price': u'市價',
'total': u'累計交易量',
'time': u'時間',
}
]
康和的範例
#!/usr/bin/env python
# -*- coding: utf-8 -*-
DDESERVERS = [
{
'server': u'MMSDDE',
'topic': u'FUSA',
'price': u'WTX&.125',
'total': u'WTX&.404',
'time': u'WTX&.143',
},
]
Excel 的範例,假設,您的檔名是quote.xls,Excel 裡 ABC是C軸,123是R軸
#!/usr/bin/env python
# -*- coding: utf-8 -*-
DDESERVERS = [
{
'server': u'Excel.exe',
'topic': u'quote.xls',
'price': u'R1C2',
'total': u'R1C3',
'time': u'R1C1',
},
]
為什麼我要寫這一套程式
=======================
因為沒有簡單,易用,跨平台,MAC 可以用,Windows XP,VISTA,或是 Windows 7,Linux ,BSD 或是更多的作業系統,
都可以用,又 Open Source 的軟體,不然,就是要費用,又不穩定
程式修正
=========
有任何的想法,或是程式的修正,儘管把 patch 送來,非常的歡迎
License: BSD
Author: TerryH, email: terryh.tp at gmail.com,