skyler 發表於 14-8-14 09:44

本帖最後由 skyler 於 14-8-14 10:24 編輯

k大您好
我在上面的第一個問題
寫的不夠清楚
在此補充一下

我在回測時發現
在沒有加上
RoundLotSize = 1;

會有下單的 shares = 0.3 這種數字
可是在當下的可下單保證金是足夠的
所以想請問一下
它的功用

並且在正式連接IBC 時是否也要加上
附上實測的圖表


謝謝


kilroy 發表於 14-8-14 11:52

skyler 發表於 14-8-14 09:44 static/image/common/back.gif
k大您好
我在上面的第一個問題
寫的不夠清楚


Hi,

shares 不是整數的可能只會在做美股上 (像零股一樣)
期貨都是一口為單位,所以 RoundLotSize = 1;

不加這行就是回測會與實際再多點誤差




skyler 發表於 14-8-14 13:51

kilroy 發表於 14-8-14 11:52 static/image/common/back.gif
Hi,

shares 不是整數的可能只會在做美股上 (像零股一樣)

謝謝K大您的回覆
只是覺得奇怪
在沒有加的情況下為何會有上面圖示中出現的 0.3單位的交易
這不知怎計算出來的
真令人搞不懂

所以實際交易上就不需要加上這行了只有在回測的AFL才要加
對吧?!

-----
另外請教的
透過IBC下限價單的語法是否如下
BuyOrderID = ibc.PlaceOrder( ContractMonth, "BUY", 1, "LMT", BuyPrice, 0, "DAY", True );
SellOrderID = ibc.PlaceOrder( ContractMonth, "SELL", 1, "LMT", ShortPrice, 0, "DAY", True );


感謝~


kilroy 發表於 14-8-14 15:27

skyler 發表於 14-8-14 13:51 static/image/common/back.gif
謝謝K大您的回覆
只是覺得奇怪
在沒有加的情況下為何會有上面圖示中出現的 0.3單位的交易


是的
回測才會用到的設定指令

---
限價單語法是這樣子沒錯

wcyjulian 發表於 14-8-16 22:43

Hi, Kilroy
我有多商品計量交易的資料需求, 如願進一步詳談, 可否email 給我 wcyjulian@gmail.com, thanks

kilroy 發表於 14-8-16 23:23

wcyjulian 發表於 14-8-16 22:43 static/image/common/back.gif
Hi, Kilroy
我有多商品計量交易的資料需求, 如願進一步詳談, 可否email 給我 , thanks ...

Hi,

能在線上幫忙的,小弟盡量

但無任何合作計畫

謝謝

wcyjulian 發表於 14-8-16 23:34

本帖最後由 wcyjulian 於 14-8-16 23:37 編輯

我程式交易下單是自己寫, 台股台指已可自動程式交易(不用mc, ab這些軟體) 目前評估哪家網路券商API穩定性較好, 只是請教, 打擾了.

kilroy 發表於 14-8-16 23:58

wcyjulian 發表於 14-8-16 23:34 static/image/common/back.gif
我程式交易下單是自己寫, 台股台指已可自動程式交易(不用mc, ab這些軟體) 目前評估哪家網路券商API穩定性較 ...

嗯嗯,

可以用 eSignal 的訊號

osdak 發表於 14-8-18 23:35

K大,我剛遇到個問題想請教,我試把區間拉長,比如6小時,減少交易次數,但當我跑optimize時,往往是100%勝率, 幾個trade的設定排頭位(我是用cad/mmd),但我要的其實是下一點點,可能勝率50%,交易數量要遠遠大增的才有用,如果人手,可以自己篩選,但如果跑WF, 應如何避免?

kilroy 發表於 14-8-18 23:53

osdak 發表於 14-8-18 23:35 static/image/common/back.gif
K大,我剛遇到個問題想請教,我試把區間拉長,比如6小時,減少交易次數,但當我跑optimize時,往往是100%勝 ...

意思是... 次數很少,透過 optimize 之後勝率達 100%
但是因為交易次數太少,希望次數提高

又要考量到 WF 回測嗎?

---
這樣看起來,感覺參數對於這個策略的影響很大

比如說稍微調整一下,可能跑出來的結果會有很大的差距

不知道是否可以附上回測的截圖







osdak 發表於 14-8-19 00:24

kilroy 發表於 14-8-18 23:53 static/image/common/back.gif
意思是... 次數很少,透過 optimize 之後勝率達 100%
但是因為交易次數太少,希望次數提高



哈, 我表達不清楚. 請幫忙看看:

我意思是, 跑完優化後, 因為有些參數組合, 只會做到幾個交易, 而且成率是100%, 所以如果用cad/mdd去做sorting, 會排在頭幾位, 但事實上, 這些參數組合, 是不真實, 沒有參考價值. 但如果用profit做sorting, 會如下:

我用人手可以篩選, 但如果用WF, 那我不希望我的in sample所得的參數是這些不真實, 100%勝率的參數組合.

是否代表我的參數太多太濶?

kilroy 發表於 14-8-19 00:41

osdak 發表於 14-8-19 00:24 static/image/common/back.gif
哈, 我表達不清楚. 請幫忙看看:

我意思是, 跑完優化後, 因為有些參數組合, 只會做到幾個交易, 而且成率 ...

請問總共用了幾組參數呢
可以把 optimize() 裡的參數設定範圍縮小

應該是參數較大才會產生交易次數過低

---
我想只有在跑完 WF + optimize 後

才會開始篩選出你覺得較優的參數

沒辦法事先設定好怎樣 optimize 參數

optimize 只能從你設定的參數範圍逐一去回測出各參數組合的回測報告

最後還是得由你自己人工判斷哪一個參數會是你能接受的


jacklcl 發表於 14-8-19 10:58

osdak 發表於 14-8-19 00:24 static/image/common/back.gif
哈, 我表達不清楚. 請幫忙看看:

我意思是, 跑完優化後, 因為有些參數組合, 只會做到幾個交易, 而且成率 ...

其實如果你想trade 數量達到某個要求
可以自己寫一個custom metric去penalize那些不合條件的result
又可以結合幾個metric去創造一個自己的metric
所以我覺得AB很有彈性的

skyler 發表於 14-8-19 16:05

k 大
請教一下
我改成下限價單時
出現如下的錯誤


該行如下



StaticVarSetText( "BuyOrderID" + Name(), BuyOrderID, true );

由於
BuyOrderID 的值是 EMPTY
因此出錯

但回推等於在這行BuyOrderID = ibc.PlaceOrder( ContractMonth, "BUY", Shares, "LMT", BuyPrice, 0, "DAY", True );
就沒有給OorderID了

我檢查IB Controller 也沒有下單的記錄

但改成上面那行以市價單下單是OK沒問題的
不知您有沒有遇過這個問題?

感謝您的幫忙


kilroy 發表於 14-8-19 16:18

本帖最後由 kilroy 於 14-8-19 16:23 編輯

skyler 發表於 14-8-19 16:05 static/image/common/back.gif
k 大
請教一下
我改成下限價單時

將 buyprice 改成 lastvalue(buyprice)
BuyOrderID=ibc.PlaceOrder(ContractMonth,"BUY",Shares,"LMT",lastvalue(BuyPrice), 0,"DAY", True );


頁: 17 18 19 20 21 22 23 24 25 26 [27] 28 29 30 31
查看完整版本: [分享] 用AB踏入外期程式交易