Menu Close

台指結算日平倉函數

台指期遊戲規則是 每個月第三個星期三必須進行結算,
不論多單或空單到了這天如果沒有自行平倉了結就會交由結算價格計算損益,並且所有部位會歸零,
結算價是 期交所依據結算日當天13:00~13:30的加權平均 計算出來的;
換倉的概念就是在結算日當天平倉當月合約且買進相同方向的下個月份合約

在MultiCharts 應該如何表達結算日平倉呢?
比較簡單的寫法是 結算日落在星期三 且星期三在每個月的14號到22號之間,

語法的範例如下

				
					DAYofMonth(Date) > 14 and DAYofMonth(Date) < 22 and DAYofWeek(Date)=3
				
			

或是新增常用的函數 取個名稱 _settlement

				
					if d<>d[1] then _Settlement=false;
if month(d) <> month(d)[1] then value1=0;
if (dayofmonth(d)>=15 and dayofmonth(d)<=21 and dayofweek(d)=3)
then begin
       _Settlement=true;
       value1=1;
    end
else if value1=0 and
(
(dayofmonth(d)>=16 and dayofmonth(d)<=22 and dayofweek(d)=4) or
(dayofmonth(d)>=17 and dayofmonth(d)<=23 and dayofweek(d)=5) or
(dayofmonth(d)>=18 and dayofmonth(d)<=24 and dayofweek(d)=6) or
(dayofmonth(d)>=20 and dayofmonth(d)<=26 and dayofweek(d)=1) or
(dayofmonth(d)>=21 and dayofmonth(d)<=27 and dayofweek(d)=2) or
(dayofmonth(d)>=22                                         )
)
then begin
       _Settlement=true;
       value1=1;
end;
				
			

結算日當天 平倉所有的部位

				
					if _settlement then begin
   sell next bar at market;
   buytocover next bar at market;
end;
				
			

不過這樣的用法有個盲點。
如果結算日遇到了國定假日就會無法執行平倉,需要手動處理或是另外寫個指定的日期去強制執行

台指期應該結算日平倉歸零重新操作 還是轉倉持續保留原本的部位,
沒有一定的答案,必須看投資人的策略屬性;
個人的作法比較傾向結算日當天平倉所有部位,
在除權息那幾個月比較不會因為次月份的價差過大導致失真。

歡迎加入小羊老師FB粉絲團 收到更多即時投資資訊

https://www.facebook.com/upup12341234

其他精選文章...