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 );