結算日隔天不發訊的語法該怎寫

有關於TS使用、泛Easy Language策略撰寫、績效評估等疑難雜症,都可在此討論。

Re: 結算日隔天不發訊的語法該怎寫

文章x5super 發表於 2010年 6月 29日, 20:26

wldtw2008 寫:建表的方式看起來是最終極的解法了.
但是如果遇到颱風, 地震等休市, 就還是得要人工去做補充. 很辛苦! 如果只是要倉隔天不出訊號, 那還不如電腦不要開就好了.

抱歉, 這會, 影響到回測, 我ㄧ開始沒考慮到.


W大,我上面寫的Showme已經可以在最後交易日當天print出最後交易日的日期,無論第三個星期三是否為休市日,
反正,就是直到開市那天就是了.
x5super
 
文章: 128
註冊時間: 2009年 7月 29日, 13:39

Re: 結算日隔天不發訊的語法該怎寫

文章Max100 發表於 2010年 6月 30日, 14:45

其實並不會不可靠,因為機率十分低!自期貨起始到現在,有6個例外,這是結算日的計算!
顯然次日為交易日的機率十分高,計算的結果是值得給予信賴的,信賴的程度相較於手工keyin
產生的錯誤,及無法適時適當的維護,可能出錯的機率,十多年6次,即使無事先排除,也是可
以容忍的?!(相對)

找出結算日之後,再估算下一天,也就是結算日後的1st day,便可以排除發出的訊號。

但日線級的無法排除,因為前一天發出的on next bar訊號無法取消,次日會繼續執行。所以
使用時,要注意什麼時候發出,以及什麼時候排除!細節.....總是瑣碎的!
Max100
 
文章: 42
註冊時間: 2009年 6月 15日, 09:25

Re: 結算日隔天不發訊的語法該怎寫

文章x5super 發表於 2010年 6月 30日, 16:08

Max100 寫:其實並不會不可靠,因為機率十分低!自期貨起始到現在,有6個例外,這是結算日的計算!
顯然次日為交易日的機率十分高,計算的結果是值得給予信賴的,信賴的程度相較於手工keyin
產生的錯誤,及無法適時適當的維護,可能出錯的機率,十多年6次,即使無事先排除,也是可
以容忍的?!(相對)

找出結算日之後,再估算下一天,也就是結算日後的1st day,便可以排除發出的訊號。

但日線級的無法排除,因為前一天發出的on next bar訊號無法取消,次日會繼續執行。所以
使用時,要注意什麼時候發出,以及什麼時候排除!細節.....總是瑣碎的!


Max大,可不可以再說明清楚一些:

1) 有6個例外.是哪6個?針對什麼例外?
2) 次日為交易日的機率十分高.是什麼的次日?機率十分高.是多高?用什麼除以什麼?
3) 日線級的無法排除.為什麼?如果知道somedate是最後交易日,在日線系統中, 不是可以下指令 If date <> somedate then sell/buy next bar at price stop/limit嗎?
x5super
 
文章: 128
註冊時間: 2009年 7月 29日, 13:39

Re: 結算日隔天不發訊的語法該怎寫

文章Max100 發表於 2010年 7月 3日, 00:39

x5super 寫:Max大,可不可以再說明清楚一些:

1) 有6個例外.是哪6個?針對什麼例外?
2) 次日為交易日的機率十分高.是什麼的次日?機率十分高.是多高?用什麼除以什麼?
3) 日線級的無法排除.為什麼?如果知道somedate是最後交易日,在日線系統中, 不是可以下指令 If date <> somedate then sell/buy next bar at price stop/limit嗎?


沒天天上來,有時甚至很久才回來!
你問了不少問題....

6個例外記憶所及不外乎就是過年之類或假日的狀況,遞延了結算日!

先由結算日定位,那次日當然是指結算日之後的自然日為交易日的機率很高,由第一個理由來看!
結算日幾乎不會被遞延的情況,很自然的次日為交易日的機率也很高!

多高?一年365天,十多年,可能有近4000天,分之6,等於發生率!那不發生就是100的補數!
所以,以一個角度來看,4000多的交易日裡,""假設""有6次訊號該遮敝而未遮,其實也還好!
相對人工keyin以為什麼都沒錯,卻老找不到問題...原來對照表有點狀況來看,"相對"除錯也容易!

最後一個問題,只是排除時,要注意自己下什麼指令,怎麼下,下在什麼時候...
Max100
 
文章: 42
註冊時間: 2009年 6月 15日, 09:25

Re: 結算日隔天不發訊的語法該怎寫

文章x5super 發表於 2010年 7月 3日, 14:49

Max大:
我問了這麼多的問題,是想進一步和你交流切磋,但必須先把焦點擬清楚.

1). 看了你對例外的解釋,由於我沒有過去十年的行事曆,所以無法比對出這6個例外為何,不過,看來今年2月與6月都算是你所說的例外.

2). 你的說明,指的是最後交易日的次日為交易日的機率相當高.你是用6個例外/10年的交易日來計算例外的機率,相對的,準確率認為很高.

3) 日線級的問題無法排除,並沒有看到你進一步的解釋.

對於這三點,我有更進一步的看法:

1). 如果期交所的結算日規則是明確一致的,照道理來說,用程式來表達是不會有例外的.
我並沒有查到有關最後交易日很明確的定義.
不過,由今年的兩個"例外"來看,就是當月第三個星期三為結算日,如果遇到非交易日,則順延到下一個交易日.
這樣,由我之前貼的Easy Language的程式碼,就可以完全的抓到了.當然有些細節的問題,基本上的假設是非交易日Tradestation不會開啟或接收資料,因為這樣,TS會產生一根多餘的日線.之前為了方便看,我貼的是圖檔,這次附上els檔案供下載import.
PRINTLASTDATE.rar


2). 這點,我有和你有不同的看法,針對本文貼文者的需求而言,可以用你的機率算法來算,但如果相反的,只要最後交易日或次日產生訊號,這誤差的機率,就變成6/(10*12) =5%,若以今年來看,誤差率則提高為2/12 = 16.7%.

3). 在TS中,一旦我們知道了當根K線的日期是我們要的特定日期時,不管是日線或者分線,都可以對次交易日做一些條件處理的,比如:
condition1 = (date = mydate );
日線: if condition1{ = false } then Buy/sell/exitlong/exitshort next bar {myprice limit/stop/} market;
分線: if time = sess1endtime then begin
if condition1 then
condition2 = true
else
condition2 = false;
condition1 = false;
end;
if condition2 {=false} then buy/sell/exitlong/exitshort next bar{myprice limit/stop/} market;

這些回覆,並不是在抬槓,而我也很認同Max大說的,各取所好,
只是在論壇上,能對於所好提供具體的數字或條件,對多數的網友的理性參考或討論,會比較有幫助.
我生性比較嚴謹,就事論事,看到模糊的邏輯,都忍不住想澄清,若有冒犯之處,請海量,也希望論壇持續有交易上理性對話的研究交流.

後記:關於第二點,用你的角度來估算機率,其實還是低估了,得把第三個星期三不是交易日的機率+第三個星期三的隔日不是交易日的機率.如果,你直接找第三個星期四就會與你原來算的一樣.
您沒有權限檢視這篇文章所附加的檔案.
x5super
 
文章: 128
註冊時間: 2009年 7月 29日, 13:39

Re: 結算日隔天不發訊的語法該怎寫

文章Max100 發表於 2010年 7月 5日, 14:32

x5super 寫:Max大:
我問了這麼多的問題,是想進一步和你交流切磋,但必須先把焦點擬清楚.

1). 看了你對例外的解釋,由於我沒有過去十年的行事曆,所以無法比對出這6個例外為何,不過,看來今年2月與6月都算是你所說的例外.

2). 你的說明,指的是最後交易日的次日為交易日的機率相當高.你是用6個例外/10年的交易日來計算例外的機率,相對的,準確率認為很高.

3) 日線級的問題無法排除,並沒有看到你進一步的解釋.

對於這三點,我有更進一步的看法:

1). 如果期交所的結算日規則是明確一致的,照道理來說,用程式來表達是不會有例外的.
我並沒有查到有關最後交易日很明確的定義.
不過,由今年的兩個"例外"來看,就是當月第三個星期三為結算日,如果遇到非交易日,則順延到下一個交易日.
這樣,由我之前貼的Easy Language的程式碼,就可以完全的抓到了.當然有些細節的問題,基本上的假設是非交易日Tradestation不會開啟或接收資料,因為這樣,TS會產生一根多餘的日線.之前為了方便看,我貼的是圖檔,這次附上els檔案供下載import.
PRINTLASTDATE.rar


2). 這點,我有和你有不同的看法,針對本文貼文者的需求而言,可以用你的機率算法來算,但如果相反的,只要最後交易日或次日產生訊號,這誤差的機率,就變成6/(10*12) =5%,若以今年來看,誤差率則提高為2/12 = 16.7%.

3). 在TS中,一旦我們知道了當根K線的日期是我們要的特定日期時,不管是日線或者分線,都可以對次交易日做一些條件處理的,比如:
condition1 = (date = mydate );
日線: if condition1{ = false } then Buy/sell/exitlong/exitshort next bar {myprice limit/stop/} market;
分線: if time = sess1endtime then begin
if condition1 then
condition2 = true
else
condition2 = false;
condition1 = false;
end;
if condition2 {=false} then buy/sell/exitlong/exitshort next bar{myprice limit/stop/} market;

這些回覆,並不是在抬槓,而我也很認同Max大說的,各取所好,
只是在論壇上,能對於所好提供具體的數字或條件,對多數的網友的理性參考或討論,會比較有幫助.
我生性比較嚴謹,就事論事,看到模糊的邏輯,都忍不住想澄清,若有冒犯之處,請海量,也希望論壇持續有交易上理性對話的研究交流.

後記:關於第二點,用你的角度來估算機率,其實還是低估了,得把第三個星期三不是交易日的機率+第三個星期三的隔日不是交易日的機率.如果,你直接找第三個星期四就會與你原來算的一樣.



你形容自己生性比較嚴謹,就事論事?!
那你應該不會介意我就事論事吧?牛刀小試一下...

你的邏輯幫你開了後門讓人家打,是否有察覺?
若沒有察覺甚至想不通,那就沒什麼交流的必要!
Max100
 
文章: 42
註冊時間: 2009年 6月 15日, 09:25

Re: 結算日隔天不發訊的語法該怎寫

文章x5super 發表於 2010年 7月 5日, 17:43

Max100 寫:你形容自己生性比較嚴謹,就事論事?!
那你應該不會介意我就事論事吧?牛刀小試一下...

你的邏輯幫你開了後門讓人家打,是否有察覺?
若沒有察覺甚至想不通,那就沒什麼交流的必要!


我盡力用具體的事物來討論,即便有邏輯的漏洞,若能被指正,也能因此學習修正,
但您總是以模糊主觀的句子來回覆,似乎是高不可測的仙人,
若果真如此,我想我也沒有神力來交流了.
x5super
 
文章: 128
註冊時間: 2009年 7月 29日, 13:39

Re: 結算日隔天不發訊的語法該怎寫

文章atrader 發表於 2010年 7月 5日, 23:03

把10多年的交易日和結算日找出來,用max大說的反推看看結果如何。
atrader
 
文章: 6
註冊時間: 2009年 4月 22日, 19:37

Re: 結算日隔天不發訊的語法該怎寫

文章varing_cloud 發表於 2010年 7月 5日, 23:09

x5super 寫:
Max100 寫:你形容自己生性比較嚴謹,就事論事?!
那你應該不會介意我就事論事吧?牛刀小試一下...

你的邏輯幫你開了後門讓人家打,是否有察覺?
若沒有察覺甚至想不通,那就沒什麼交流的必要!


我盡力用具體的事物來討論,即便有邏輯的漏洞,若能被指正,也能因此學習修正,
但您總是以模糊主觀的句子來回覆,似乎是高不可測的仙人,
若果真如此,我想我也沒有神力來交流了.

這倒也是
如果我跟人家討論到一半 應答不下了
就冷笑兩聲 說聲你懂個屁 拍拍屁股走路 避免臉上難看
那倒很像韋小寶一樣
x5大的邏輯我沒有仔細去看 不過這樣不是討論事情的態度
varing_cloud
 
文章: 244
註冊時間: 2009年 10月 12日, 08:23
來自: Taiwan

上一頁

回到 Tradestation與Multi-Chart交易平台

誰在線上

正在瀏覽這個版面的使用者:沒有註冊會員 和 0 位訪客