非游程參數檢驗的代碼 [開拓者 TB]
- 咨詢內容:
本帖最后由 rypan 于 2012-2-14 16:32 編輯
- //------------------------------------------------------------------------
- // 參考《高頻交易》P74
- // 簡稱: ycjy
- // 名稱: 非參數游程檢驗
- // 類別: 公式應用
- // 類型: 用戶應用
- // 輸出:
- //------------------------------------------------------------------------
- Params
- Numeric period(200);
- vars
- NumericSeries zbd(0);//正變動計數
- NumericSeries fbd(0);//負變動計數
- NumericSeries yc(0);//游程計數
- Numeric n1;
- Numeric n2;
- Numeric u;
- Numeric x;
- Numeric s1;
- Numeric s2;
- Numeric s;
- Numeric z;
- Begin
- yc = 0;
- If(c > c[1]){
- zbd = 1;
- fbd = 0;
- If(zbd[1] < 0.5)//上一個bar不是正變動。正游程開始。
- yc = 1;
- } else If(c < c[1]){
- zbd = 0;
- fbd = 1;
- If(fbd[1] < 0.5)//上一個bar不是負變動。負游程開始。
- yc = 1;
- } else {
- zbd = 0;
- fbd = 0;
- }
-
- n1 = SummationFC(zbd, period);
- n2 = SummationFC(fbd, period);
- u = SummationFC(yc, period);
- x = 2 * n1 * n2 / (n1 + n2) + 1;
- s1 = 2 * n1 * n2 * (2 * n1 * n2 - n1 - n2);//分子部分
- s2 = Sqr(n1 + n2) * (n1 + n2 -1);//分母部分
- s = Sqrt(s1 / s2);
- z = (Abs(u - x) - 0.5) / s;
- PlotNumeric("Z", z);
- PlotNumeric("標準值", 1.645);
- /*
- PlotNumeric("n1", n1);
- PlotNumeric("n2", n2);
- PlotNumeric("u", u);
- //*/
- End
- //------------------------------------------------------------------------
- TB技術人員:
我也做個一個 這個 但是 兩者 運行的結果不一致 來交流交流
//------------------------------------------------------------------------
// 簡稱: course_test
// 名稱: 非參數游程檢驗
// 類別: 公式應用
// 類型: 用戶應用
// 輸出:
//------------------------------------------------------------------------
Vars
NumericSeries i(0);
NumericSeries j(0);
NumericSeries u(0); //游程
Numeric s; // 標準差
Numeric x; // 期望\
Numeric z;
Begin
If(close-open>0)
{i=i[1]+1;}
If(Close-open<0)
{j=j+1;}
if(close[1]-open[1]<>0 && close-open<>0)
{
if((close-open)*(close[1]-open[1])<0)
{u=u+1;}
Else
{u=u;}
}
else
if(close[1]-open[1]==0 && close-open<>0)
{ if((close[2]-open[2])*(close-open)<0)
{u=u+1;
}
else{u=u;}
}
else
if(close-open==0)
{u=u;}
x=((2*j*i)/(i+j))+1;
s=Sqrt(2*i*j*(2*j*i-j-i)/((j+i-1)*Sqr(j+i)));
z=(Abs(u-x)-0.5)/s;
PlotNumeric("ivalue",i);
PlotNumeric("jvalue",j);
PlotNumeric("zvalue",z);
end
//------------------------------------------------------------------------
// 編譯版本 GS2010.12.08
// 用戶版本 2011/10/31 11:31
// 版權所有 ucomeonpp
// 更改聲明 TradeBlazer Software保留對TradeBlazer平臺
// 每一版本的TrabeBlazer公式修改和重寫的權利
//------------------------------------------------------------------------ - TB客服:
本帖最后由 rypan 于 2012-2-14 14:52 編輯
可能不對。收益率應該是兩個Bar收盤價相比吧。
你的算法是哪本書上的?和我看的不太一樣。 - 網友回復:
我本以為很多品種會顯著非有效,可檢測的結果大出我的意料
- 網友回復:
回復 4# rypan
能說說結論嗎?
如果以上指標公式不適用于您常用的行情軟件
或者您想改編成選股公式,以便快速選出某種形態個股的話,
相關文章
-
指定的模型還沒有相關內容!