是時候入主題、要試試backtesting了
11/9
第一次做backtesting
預料之內的雞手鴨腳
只試了RSI和MACD的效果
結果不是負數就是賺少少
不過我都只用手上有的程式碼
而且一次只用一個
要把心目中的藍圖化為程式碼...我知道無法在短時間內完成
再加油吧
暫時是想法是從他人的程式碼中學習和加入自己的原素
例如:
- 預設的止蝕是5%,似乎太低? 聽聞有追蹤止蝕,即跟著價位浮動止蝕
- 很多程式碼都有sellshort, 即放空,我個人是不認為現在的我有條件放空,刪掉可能比較合適
12/9
拼拼湊湊之後終於算是把心目中最小最小的一個藍圖程式化>v<
其實這個藍圖也是在網上偶爾看到的
大概就是高過上個月高位買入,低過上個月的低位放出
不過我不懂上個月高位和低位份別怎麼寫
所以寫成三十日內最高和最低(也OK吧?)
把不同的變數改變後
backtest後的結果都很接近零
即賺一點點或蝕一點點
奇怪是為甚麼我爬文時
別人的金額都超高(六七位數字...)
但我只有兩三位.../_\
然後因為一直都在backtester看結果
打算轉回chart上看....天啊!!!
密密麻麻的交易指示啊...即使是IB都虧死我Orz
而且發現很多都即日就買入和放出
是我寫的碼有問題嗎?
if Close>Highestbar(close,30) then begin
buy("buy") next bar at market;end;
If marketposition>0 and close<lowestbar then="" begin="">
sell("exit_buy") next bar at market;end;
正常我頭痕之際
爬文爬到了好東東>.
太高興了~~~
「Def: HighestFC The HighestFC function uses a fast calculation method to return the highest value found when applying the parameter PRICE over a period of time defined by the parameter LENGTH. Otherwise, it is identical to the Highest function.
Def: HighestBarThe HighestBar function is very similar to the Highest function. Whereas, the Highest function returns the value of the highest PRICE parameter, the HighestBar function returns the number of bars ago it occurred.
For example:
HighestFC : HighestFC(H,10)[1] returns highest high of last 10 bars.
HighestBar : HighestBar(High, 10)[1], the highest bar of the last 10 bars
所以如果是我,我會寫成:If High > HighestFC(High,20) Then buy Next Bar at Market;
If Low < LowestFC(Low,20) Then sell Next Bar at Market;
加上" [1] "(也就是前一根Bar的意思),那麼就不會有買賣訊號出現,因為HighestFC跟LowestFC在計算上,都包含了目前的Bar,所以再怎樣"自己也不會大(小)於自己"」
太簡潔明了!!!讚呀!!
if marketposition=0 and Close>Highestfc(close,30)[1] then beginbuy("buy") next bar at market;end;
If marketposition>0 and 0.8*highestfc(close,15)[1]>close then begin sell("exit_buy") next bar at market;end;
嗯...結果還是負數
再接再厲
沒有留言:
張貼留言