COCO研究院

 找回密碼
 註冊
搜索
123
返回列表 發新帖
樓主: dunhilltc

請問powerlanguage中的ema寫法

[複製鏈接]
 樓主| 發表於 12-3-18 20:54 | 顯示全部樓層
感謝meimei兄有如此的胸襟
小弟自己為找到聖杯
結果也只是個笑杯
如此一來真的有一長大段路需要摸索
希望我之後有如此功力的時候也可以跟meimei兄一樣解決別人的問題
發表於 12-3-18 20:57 | 顯示全部樓層
我認為你的EMA公式是錯的,你可以把HTS的EMA原碼改寫到MultiChart就好了.HTS只要安裝完,不須帳號登入也能看到所有指標/函數/買賣信號的原始碼(當然有鎖碼的除外,不過有鎖碼的非常少)
 樓主| 發表於 12-3-19 22:53 | 顯示全部樓層
請問wanghu兄
HTS內5EMA的程式碼可以直接告知小弟嗎
因為日盛的系統真的用不習慣
 樓主| 發表於 12-3-19 22:57 | 顯示全部樓層
meimeichen 發表於 12-3-18 11:21
把你在   Eleader 跟 MC 上的圖 貼出來 對比 比較快啦
不用全貼出來 貼一小段 加上說明
會比你解釋半天 ...

請問meimei兄
小弟又自行編寫了一個程式如下
input:FastDay(4),SlowDay(29);
variable:EMA_F(0),EMA_S(0);
EMA_F = XAverageOrig(C, 4);
EMA_S = XAverageOrig(C, 29);
if marketposition=0 and EMA_F Cross Above EMA_S then begin
buy("buy") next bar at market;
end;
if marketposition=0 and EMA_F Cross Under EMA_S then begin
sellshort("sell")next bar at market;
end;
if marketposition>0 and EMA_F Cross Under EMA_S then begin
sell  ("EXIT_buy") next bar at market;
end;
if marketposition<0 and EMA_F Cross Above EMA_S then begin
buytocover  ("EXIT_sell") next bar at market;
end;
if marketposition>0 then sell next bar at entryprice-100*MinMove/pricescale  stop;
if marketposition<0 then buytocover next bar at entryprice+100*MinMove/pricescale  stop;
不過回測時發現最大虧損有到10萬
想說怎麼會這樣
如果是跳空也不至於這麼慘吧
是哪邊程式沒有寫好嗎

發表於 12-3-20 08:15 | 顯示全部樓層
dunhilltc 發表於 12-3-19 22:57
請問meimei兄
小弟又自行編寫了一個程式如下
input:FastDay(4),SlowDay(29);variable:EMA_F(0),EMA_S(0); ...

正常啊
用 MA 來交易 本來   MDD 就不會太小
 樓主| 發表於 12-3-20 08:23 | 顯示全部樓層
meimeichen 發表於 12-3-20 08:15
正常啊
用 MA 來交易 本來   MDD 就不會太小

可是.....
不是有設定停損等相關措施
怎麼還會這樣呢
發表於 12-3-20 08:26 | 顯示全部樓層
dunhilltc 發表於 12-3-20 08:23
可是.....
不是有設定停損等相關措施
怎麼還會這樣呢

MA 交易策略 真那麼好 大家早都賺翻了

長期的回測 也許有賺頭,因為撈到 大波段
短期 震盪 停損 就賠光了

 樓主| 發表於 12-3-20 08:29 | 顯示全部樓層
meimeichen 發表於 12-3-20 08:26
MA 交易策略 真那麼好 大家早都賺翻了

長期的回測 也許有賺頭,因為撈到 大波段

哈哈
小弟還是有點搞不清楚
是因為沒有碰到停損點就直接跳空嗎
還是設定的停損點沒有作用呢
不過每次都是短時間有賺
時間拉長就變得很一般
果然笑杯比較好找
發表於 12-3-20 21:59 | 顯示全部樓層
以下是TS的EMA
---------------------------------------
Inputs: Price(NumericSeries), Length(NumericSimple);
Variables: Factor(0);

If CurrentBar = 1 Then
    EMA = Price
Else
        begin
      If CurrentBar <= Length -1 Then
                   begin
               Factor = 2 / (CurrentBar + 1);
               EMA = Price * Factor + (1 - Factor) * EMA[1];
                 End
      Else  
                  begin
              Factor = 2 / (Length + 1);
          EMA = Factor * Price + (1 - Factor) * EMA[1];
                End;
   End;
 樓主| 發表於 12-3-22 20:04 | 顯示全部樓層
wanghu 發表於 12-3-20 21:59
以下是TS的EMA
---------------------------------------
Inputs: Price(NumericSeries), Length(NumericSi ...

怎麼感覺TS的EMA比MC的還要複雜許多
請問這是單純設定變數的部分而已嗎
發表於 12-3-23 15:18 | 顯示全部樓層
dunhilltc 發表於 12-3-16 00:07
小弟貼一下改變過後的語法好了
input:FastDay(20),SlowDay(10);

永豐eleader 寫法跟奇狐依樣

 樓主| 發表於 12-3-23 16:30 | 顯示全部樓層
stock1586 發表於 12-3-23 15:18
永豐eleader 寫法跟奇狐依樣

對不起
請問stock兄
您的意思是說可以改用奇狐當程式指標嗎
可是這樣不會又造成跟meimei兄之前說的一樣
回測只出現可用的指標
您需要登錄後才可以回帖 登錄 | 註冊

本版積分規則

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

GMT+8, 24-11-25 02:38

Powered by Discuz! X3.4

Copyright © 2001-2023, Tencent Cloud.

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