COCO研究院

 找回密碼
 註冊
搜索
查看: 5879|回復: 4

[教學] 求助,marketposition的問題

[複製鏈接]
發表於 20-12-23 22:27 | 顯示全部樓層 |閱讀模式
本帖最後由 zx0988158941 於 20-12-23 22:34 編輯

想了解,在程式碼中,marketposition 判斷的有無是如何影響到交易的判斷的舉例:
var:avg1(0),avg2(0);
value1 = average(c,10);
value2 = average(c,20);
avg1 = value1 > value2;
avg2 = value1 < value2;

if marketposition <> 1 and avg1 then buy next bar at highest(h,1) stop;
if marketposition <> -1 and avg2 then sellshort next bar at lowest(l,1) stop;

if avg1 then buy next bar at highest(h,1) stop;
if avg2 then sellshort next bar at lowest(l,1) stop;

1608733903474.jpg
上圖是同一時間,下面策略多了marketposition的判斷而多空單進場,想知道為何交易點不同的原因。

發表於 20-12-25 09:27 | 顯示全部樓層
不是程式碼的問題,是要先考慮你判斷進場的程式段跟結算出場的程式段的相對位置可能會造成marketposition 的判斷不同

以你的圖例來說,或許你可以在進場前加印出 marketposition 的狀態看看,是不是他造成結果不同

print(marketposition );
if marketposition <> -1 and avg2 then sellshort next bar at lowest(l,1) stop;


print(marketposition );
if avg2 then sellshort next bar at lowest(l,1) stop;
回復 支持 1 反對 0

使用道具 舉報

發表於 20-12-24 09:42 | 顯示全部樓層
資料不足,無法單純用這幾行判斷。
要考慮你程式的相對關係,例如 End of Day 的成立點跟判斷要不要進場,就會對取出的marketposition有影響
 樓主| 發表於 20-12-24 18:46 | 顯示全部樓層
flashbibby 發表於 20-12-24 09:42
資料不足,無法單純用這幾行判斷。
要考慮你程式的相對關係,例如 End of Day 的成立點跟判斷要不要進場, ...

抱歉 附上我的結算日出場
{=======LastTradingDay======}
condition1=(dayofweek(date) = 3 and dayofmonth(date) > 14 and 22 > dayofmonth(date));
if condition1 = true then begin
setexitonclose;
end;

所以可能是因為結算日影響進場判斷瞜?
策略內容加結算日就都放上了

 樓主| 發表於 20-12-29 18:34 | 顯示全部樓層
flashbibby 發表於 20-12-25 09:27
不是程式碼的問題,是要先考慮你判斷進場的程式段跟結算出場的程式段的相對位置可能會造成marketposition  ...

感謝 以解決,在結算日當根K棒雖然已經進行賣出交易,MARKETPOSITION卻還顯示在倉才會影響交易的有無。
您需要登錄後才可以回帖 登錄 | 註冊

本版積分規則

手機版|Archiver|站長信箱|廣告洽詢|COCO研究院

GMT+8, 24-12-23 07:55

Powered by Discuz! X3.4

Copyright © 2001-2023, Tencent Cloud.

快速回復 返回頂部 返回列表
理財討論網站 |