fancytom 發表於 18-6-22 20:37

小比賽- 請 用1分鐘線 回測最近10年看看--(傳統布林通道)

本帖最後由 fancytom 於 18-6-22 20:50 編輯

雖然 我知道: 傳統布林通道(收盤價突破下軌線var1=>作多,收盤價跌破上軌線var0=>作空)
長期下來會虧損, 但是那些範例程式碼 原因是留倉+ 百分比例停損 設的太大
今天有時間所以我把另一支 布林通道(收盤價突破上軌線var0=>作多,收盤價跌破下軌線var1=>作空)
拿來修改成:傳統布林通道(收盤價突破下軌線var1=>作多,收盤價跌破上軌線var0=>作空)
我修改了2處: 不留倉+ 停損: 設固定點數停損5 ==>目的是想試驗看看 長期下來會不會虧損?

我想問的問題 如下:
Q1. 下方 那幾句紅色的,我很可能寫錯, 應該如何改?? (希望高手 [頑皮豹]大大 能幫我改正錯誤 )

Q2. 我雖然曾下載,凱衛MultiCharts_8.5中文版,我也有 台指期1分線 的數據檔
   但是都沒有在跑程式. 也沒有開通帳號密碼
   我是否能執行 來進行回測 功能???
   
Q3. 所以請 用1分鐘線 回測最近10年看看, 是否長期下來會不會虧損?
   找出最佳參數aa(30),length(20),   numdevsdn(2.0), fixLost(5)
   應該設多少 才會最佳?

Q4. 我還擔心 用1分鐘線 回測時 , 買賣次數會太頻繁!
   10年內 總共會交易幾次?

5. 為了讓大家 有回測動力 . 我出70, 50, 30金錢懸賞 -給找出最佳參數 績效最高(回測結果賺最多)的前123名.
   請各位 將1. 你修改後的[策略] 及 2.[最佳參數] 及 3.[回測結果] 圖貼出.
   這算是一種小比賽 .也是純粹是一場夏天的小遊戲,期間定為10天.
   規定 只有2個:(1). 傳統布林通道(收盤價突破下軌線var1=>開始作多,收盤價跌破上軌線var0=>開始作空)
                        (2). 必須用"1分鐘線" 去回測"大台指期" , 買賣成本 大部份人好像是算1000.

   如果 我有所缺漏 ~請補充和指正.我才好補進去遊戲規則.

   (圖片:不用註冊 也可以上傳到這圖床 https://adfe.co/   )
--------------------------------------------------------------------------------
// 傳統布林通道(收盤價突破下軌線var1=>作多,收盤價跌破上軌線var0=>作空)的修正用法+不留倉
// 標準差: 設2.0   停損: 設固定點數5

input: bb(12), sl(0.01),testpricelband(close),
      tt(0905),aa(30),
      bollingerprice(close),
      length(20),
      numdevsdn(2.0),fixLost(5)

var:var0(0),var1(0),dh(0), dl(0);

//var0上軌線var1下軌線
var0=bollingerband(bollingerprice,length,numdevsdn);
var1=bollingerband(bollingerprice,length,-numdevsdn);


//前20分鐘 ()的高低區間濾網.
if time=tt then begin
   dh=highd(0)
   dl=lowd(0)
end;

//做多條件成立:: 收盤價向上突破下軌線var1==> 作多
if close crosss over var1 then begin
   condition3=true;
   condition4=false;
end;

//做空條件成立:: 收盤價向下跌破上軌線var0==> 作空
if close crosss under var0 then begin
   condition4=true;
   condition3=false;
end;


//高點 >今低價+ (1.5倍* 過去30根ATR)==> 作多
if time<1315 and condition3=true and low>=dl
   and high>lowd(0)+1.5 * avgtruerange(aa) then
   buy next bar at highest(high,3) +1 stop;

//低點 >今高價- (1.5倍* 過去30根ATR)==> 作空
if time<1315 and condition4=true and high>=dh
   and low>highd(0)-1.5 * avgtruerange(aa) then
   sellshort next bar at highest(high,3) -1 stop;

//若是有多單==> 固定點數停損
if marketposition>0 then
   sell next bar at entryprice - fixLost stop;
//若是有空單==> 固定點數停損
if marketposition<0 then
   buytocover next bar at entryprice + fixLost stop;

//如果是結算日 自動平倉
condition9=dayofweek(date)=3
   and dayofmonth(date)>14
   and dayofmonth(date)<22
   or date=1040127 or date=1070226
   or date=1100617 or date=1100222;

//if condition9=true then begin
   if time>1335 then begin
      sell this bar on close;
      buytocover this bar on close;
   end;
//end;

SamJiang 發表於 18-6-23 17:17

這個腳本和我最近密集研究的內容很接近,所以很感興趣。先提供兩個觀察:
1. 紅色部份如果沒有加上Time>=0905的限制,則09:04之前的dl及dh會用到前一天的值。這是原先策略的想法嗎?還是一個小 bug?

2. 由於這兩天才在思考換月的問題,所以對換月比較敏感一點。目前的腳本,到期日不留倉,問題單純了一些。
但是仍有個問題會出現在到期日的次日,一般也就是星期四。
以aa=30為例,到期日次日的time=0905~0915之間時,已過了前20分鐘的高低區間濾網,但是資料需要用到過去的30根bar。
當時,新月只有資料不足30根bar, 所以必需用到舊月的資料。如果新舊月有200點的價差,結果應該就不是原先所設想的策略結果。
如果最佳化的結果,aa比30大很多,影響的時間會更長。
(如果加上T+1盤,或許沒有這個問題。但是T+1盤只實施了一年多。回測要求10年,一定會有這個問題。)

以上兩點是我初步觀察到的兩個小問題,提供樓主及參加比賽者參考。

我也很想知道前輩們的回測結果。所以,不知道可不可懸賞加碼60金錢?(前3名各加20金錢。)


fancytom 發表於 18-7-3 15:49

本帖最後由 fancytom 於 18-7-3 15:52 編輯

如我所預期 只有這裡的人不感興趣的居多
只有1個 只玩不到1個月的人感興趣.終於看出我故意留在源碼 6~ 7個錯誤中的1個.
看來只好從缺{:4_140:}

周莫凡 發表於 18-7-4 12:44

別擔心你的作品被抄襲。該擔心的是,他們不再想抄襲你。
Don't worry about people stealing your design work. Worry about the day they stop.

翁森亮 發表於 18-10-25 09:14

感謝 分享
如何利用布林线BOLL指标、炒期货:李杰
    今天小编讲一个大家比较熟悉的指标,也是运用比较多的指标,同时也是比较实用的指标,那就是布林线指标BOLL,有些投资者会说,布林线指标嘛!谁不知道。但是你知道并不代表别人知道!下来我们来真正了解下布林线指标。

    运用布林线指标做单,不能把周期调到太小,一般是15分钟和30分钟或者1小时周期,很多朋友喜欢做超短线,以1分钟,5分钟周期看,但是布林线指标运用1分钟,5分钟周期好像不太合适。所以笔者一般是运用15分钟和30分钟周期做单,15分钟运用比较,感觉15分钟比较实用,当然个人的运用方式不同,大家可以随意切换周期,看自己的操作方法。
    布林线BOLL指标是通过计算价格的标准差,再求期货价格的信赖区间。布林线BOLL指标有三条线,一条黄色(上轨),一条白色(中轨),还有一条紫色(下轨)。上下两条黄色和紫色线分别看成是期货价格的压力线和支撑线,而在两条线之间的白色线,可以看成期货价格的平均线。
    一般来说,期货价格会运行在压力线和支撑线所形成的通道当中,当布林线的波动呈水平方向移动时,可以被视为当前的趋势行情以横盘震荡运行,属于常态化范围运行。
    当期货价格向上穿越上轨时,将会形成短期的回档,可以看作是短线的卖出信号,价格向下穿越下轨时,将会形成短期的反弹,此时则为短线的买进时机。
    期货价格经过一段时间的横盘后,布林线的波动带区间有收窄迹象,上轨和下轨相互靠拢时,表示将要开始出现变盘。此时若价格连续穿越上轨,表示价格将朝上涨方向运行,而当价格连续穿越下轨,表示价格将朝下跌方向运行。
    期货价格上穿上轨,紧贴这上轨运行,强势状态,明显的上涨单边式。当期货价格下穿或者紧贴下轨运行,明显下跌单边式行情。不过单边式不好遇到,一般都是震荡下跌或上行居多,所以做期货要有耐心,要能忍住。
    当价格下穿中轨,在中轨和下轨通道中运行,明显震荡下行状态,当期货价格上穿中轨,在中轨和上轨通道中运行,震荡上行走势,当然布林线指标较实用。
    上面讲了布林线指标的运行,怎么去操作也就不用我多说了吧!如何止损大家也应该知道吧!坚决按照布林线通道指标进行做单,我相信是不会亏损的,虽然有小幅的止损,但是那都是必须的,期货就是这样的,小止损去换来大的行情,因为期货行情无法判断,无法预测,所有的操作都是方法。

====================================如何运用布林线指标赚钱
 \         
布林线四大状态及形成原因:我们总爱用趋势和震荡来描述当前市场所处的状态,如果用布林线的状态来描绘当前市场,1.收口和2.走平盤整震荡市场,3.开口和4.三轨同向可以归结为趋势市场。市场总是围绕这个四个状态重复运行,如果我们能洞悉这个四个状态的转换规律,就能预测市场的下一步走势。下面就对四大状态间的转换规律进行简单的介绍。
    行情总是涨涨停停,当布林线开口之后,市场总要进行修正整理,这就是收口。三轨同向和走平又是如何解读呢,或者说是怎么形成的呢?秘密在于中轨。当布林线收口后,中轨如能提供支撑或阻力,行情继续运行。如果中轨不能有效的支撑阻力,那么价格会围绕中轨展开震荡整理,继续收口,直至走平。
    搞清楚了布林线四大状态之间的转换关系和衔接关系,对后市预测和具体的交易都不无裨益,起码知道如何赚钱。
    1.布林线指标开口及止损技巧:.开口代表着趨勢行情快速展开.,,止损设在中轨略下方即可,因为一旦股价回跌时突破中轨,即可确认这波大开是假的,越早出场越好。
    2.布林线指标收口及止损技巧:当布林线指标进入收口阶段后,之前的行情走势暂时告一段落,行情将进入反转阶段或暂时回调,如果拥有复合仓位,建议平掉一半仓位。如若后市再度突破中轨,平仓全部仓位为佳。布林线进入收口阶段后,行情一般会陷入震荡整理,行情波动不大,以短线区间操作为主,止损设置在可见的最高最低点上下方即可。收口阶段是高抛低吸区间操作的良机。
   3. 布林线指标三轨同向及止损技巧:收口后,中轨若能成为有效的支撑阻力,就会出现三轨同向状态。三轨同向是市场趨勢行情极为强劲而且稳定的表现,也是最为考验投资者耐心的时候。这就是酒田战法中的掠如火,牢牢抱住獲利的头寸,中轨成为很好的加仓点,也成为止损的参考点,直到跌破布林线中轨为止。
    4.布林线指标走平及止损技巧:当市场陷入震荡整理后,尤其是窄幅震荡整理,布林线就走平。走平是布林线最为好看但是最难把握的行情,因为面临着布林线随时开口的风险。按酒田战法的战术指导还是以不动如山,观望为好。不过若是此情形发生早盘,可以进行一些刮头皮的操作,止损设置的就比较宽松。正规的操作还是应该耐心的等着布林线的开口方向,关于确认布林线的开口的具体操作已在前文提过,而且是最为详细的章节。
    以上就是布林线指标的四大状态以及不同状态下的操作方式、止损设置的描述。

   布林线虽然简单如太极拳,却博大精深。这些不过是布林线简单的用法,布林线在描述M头,头肩顶等布林线形态上也有这自己的独到之处,加之二次探底,筑底时出现的背离,西部汇市将在以后的文章里跟大家细说。

翁森亮 發表於 18-10-28 11:14

讓虧損、套牢的股票「等反彈再出場」.就不是一件對的事
--
一來不一定等的到反彈的機會
二來彈到哪裡要出?抱上又抱下的人更多
--
正確做法是.跌破當下就要出
--如果不知哪裡是該出的點.那當初就根本不應該進.因為這代表沒做風控
-----
而亡羊補牢的版本.是已經被套了...那請聽我建議:「馬上往下設停損點」
--
頁: [1]
查看完整版本: 小比賽- 請 用1分鐘線 回測最近10年看看--(傳統布林通道)