[TS懶人包] [保險服務]

2008年7月20日 星期日

HTS 程式碼轉 TradeStation 程式碼 - 函數篇

HTS 和 TradeStation 的函數有些是不一樣的,雖然大部份都相同,不過總是有那麼少數是需要做修正的,如果要把 HTS 的程式轉到 Tradestation 來,那以下的東西就需要注意了,目前只寫出我有用到的,很多我沒用到的,其實我也不會去注意到,如果有人知道其它的,就幫我補一下吧~































HTS
Tradestation
MA Average
Draw1 Plot1
OpenOfD OpenD
Parameter Input
abs(xx) absValue(xx)
draw1 plot1



好像我用到的就只有這些了…還真少啊…有用到再慢慢補吧…

22 則留言:

  1. 請問,在HTS有這樣的語法
    E=min(E[1],high);
    這裡的min在TS裡該用什麼代替?
    還有max又是用什麼代替呢?

    Vars:AA(true),BB(0);
    If !AA And BB != 0 Then...
    這裡的驚嘆號是什麼意思?
    在TS該用什麼代替?
    感謝版主,實在是google不到了~

    回覆刪除
  2. min 可以用 MinList 替代…TS 這邊可以接受多個數值比較…HTS 只能放兩個的樣子…另外 max 就是 MaxList

    嗯..驚嘆號啊..代表的是 not 的意思…也就是說如果 AA 為 true.. 那 !AA 就會為 false..
    後面的 != 就是不等於…TS 可以用 <> 替代…至於前面的 !AA...我在 TS 就找不到了…只好給你一個比較麻煩的方法了:
    if AA = true then
    AA=false
    else
    AA=true;
    if AA and BB <> 0 then...
    試試看囉

    回覆刪除
  3. 感謝版主
    我試用aa<>true以取代!aa,verify沒出現錯誤提示,這樣是否表示應該也可以吧??
    關於HTS與TS的轉換差異
    小弟也補充一下:
    abs(xx)->absValue(xx)

    回覆刪除
  4. 以 if !AA and BB != 0 的情況下這樣是可行的..這個地方你本來就是要在 AA = false 才進行下去…所以這樣用是可以的..
    另外也謝謝你提供個新的資訊..:p

    回覆刪除
  5. 大大您好
    我又遇到一個難題
    我用TS回測時,2000年竟然都沒有信號,1999年卻有信號,
    因為2001年以前開收盤時間和現在不同,而
    我用當沖系統,所以我用
    if date >= 1010101 then begin
    if marketposition =1 and time =1315.00 then begin
    exitlong next bar at market;
    end;
    if marketposition =-1 and time =1315.00 then begin
    exitshort next bar at market;
    end;
    end
    else
    if marketposition =1 and time =1200.00 then begin
    exitlong next bar at market;
    end;
    if marketposition =-1 and time =1200.00 then begin
    exitshort next bar at market;
    end;
    不知道時間參數是不是有問題?

    回覆刪除
  6. 我剛試了一下..日期的部份應該沒問題..也許問題出在你進場的時間吧?

    回覆刪除
  7. 大大啊
    冤枉啊~
    進場時間1999和2000都是同個程式嘛
    時間條件是同一行的
    只有區分2001年以後和之前而已啊!
    而且很奇怪的是,若不區分日期,2001年以後的年月績效也都會改變,按理2001年以後的績效不該有所改變才對啊,除非我區分日期後,程式根本是亂套了,您認為呢?

    回覆刪除
  8. 你好:

    請教您 HTS 指標內有一函數 DrawBar1 ,TS不知要怎樣改。謝謝!!

    回覆刪除
  9. 你可以試試 plotpb 或是 plotpaintbar

    回覆刪除
  10. DH:
    大大請問這各地方要怎麼翻成TS


    IF BarsSinceEntry(0) <> 0 AND HIGH >= value98 THEN begin
    IF OPEN >= value98 THEN begin
    EXITLONG("停利s") THIS BAR AT OPEN OR Higher;
    EXITLONG("停利ss") THIS BAR AT OPEN OR LOWER;
    end ELSE
    EXITLONG("停利sss") THIS BAR AT value98 OR HIGHER;
    EXITLONG("停利SSSS") THIS BAR AT value98 OR LOWER;
    END;
    END;

    回覆刪除
  11. 您好:TS 沒辦法用 this bar …所以要用
    exitlong ("停利") next bar at value98 limit

    回覆刪除
  12. DK大大:
    elseIf time=085500 or time=090000 or time=090500 or time=091000 or time=091500 then


    請問這段怎麼翻TS?

    回覆刪除
  13. TS 的時間是 0850.00 這種格式..應該你換成這樣就行了..

    回覆刪除
  14. D.K大~~
    請問一下,根號的語法@@
    拍謝逅= =,剛接觸TS好多東西都不會,還要多麻煩您了>"
    還有~~請問TS有說明書嗎@@?
    謝謝^^

    回覆刪除
  15. Tai: Squareroot(25) = 5
    還真的要用開根號啊.....

    回覆刪除
  16. 恩阿~~
    來試試看!!
    哈哈^^

    回覆刪除
  17. 請問,在hts裡N= Sum(Diff,Period)

    ts中要如何寫

    ts檢查sum是錯誤的

    感謝DK回覆

    回覆刪除
  18. DK大您好,如果像是上頭版友提到的...
    EXITLONG("停利s") THIS BAR AT OPEN OR Higher;
    EXITLONG("停利ss") THIS BAR AT OPEN OR LOWER;
    EXITLONG("停利sss") THIS BAR AT value98 OR HIGHER;
    EXITLONG("停利SSSS") THIS BAR AT value98 OR LOWER;

    是不是要改成下面這兩行就行了↓
    EXITLONG("停利s") next bar AT OPEN limit;
    EXITLONG("停利sss") next bar at value98 limit;

    它的結果跟原來用在HTS的THIS BAR會一樣嗎?

    回覆刪除
  19. 結果還是會不太一樣..this bar 是以目前這根來做決定..next bar 是以上一根的資料作決定...所以結果還是會有差異的..
    另外要用 next bar 的話...需要把 stop 也寫進去..

    回覆刪除
  20. 請教一下dk大,ts的當日高點表達要怎寫,假設value1=當日高點,因為在hts表達是
    Array: HoD[84](-1)
    value1=highofD(0,HoD)
    若在ts寫signal要怎麼寫ㄋ???

    回覆刪除
  21. FAN: TS 的話.. 當日高點是 highd(0), 昨日高點的話是 highd(1), 已經有內建函式可以直接使用..另外也有 lowd, closed, opend 等可以用

    回覆刪除

請留下您的大名…匿名者恕不回應…

Related Posts Plugin for WordPress, Blogger...