日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當(dāng)前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

布林带止盈止损策略改进

發(fā)布時間:2023/12/8 编程问答 42 豆豆
生活随笔 收集整理的這篇文章主要介紹了 布林带止盈止损策略改进 小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.

布林帶止盈止損策略改進(jìn)

萬維鋼的《高手》里提到了《算法之美 指導(dǎo)工作與生活的算法》這本書,里面提到了諸如“什么時候開始談女朋友”、“看房看到什么時候才開始決定買”等擇時策略問題,數(shù)學(xué)家經(jīng)過嚴(yán)密的推理計(jì)算得到了37%這個數(shù)字,也就是在給定的時間段內(nèi),以37%作為分隔點(diǎn),前37%的時間作為觀察,過了這個時間點(diǎn)就該做決策了。

那么聯(lián)想到量化策略,我們什么時候止盈止損不也是同樣的問題嗎?
顯然我們不能簡單把37%作為止盈止損點(diǎn),我的想法是把每次開倉后最大利潤的37%(或者1-37%)作為止盈點(diǎn),止損仍然是布林帶的中軌。
核心代碼如下:

info_dict = {'pre_signal': 0, 'open_price': 0, 'profit': 0}# 計(jì)算當(dāng)前利潤 df.at[i, 'profit'] = df.at[i, 'close'] - info_dict['open_price'] # 找到利潤最大值并替換字典值 if df.at[i, 'profit'] > info_dict['profit']:info_dict['profit'] = df.at[i, 'profit']# 當(dāng)本周期有平多倉信號,或者需要止盈止損 # 止盈點(diǎn)為當(dāng)前收盤價小于最大利潤的37%點(diǎn)位 condition1 = df.at[i, 'profit'] > 0 condition2 = df.at[i, 'profit'] < info_dict['profit'] condition3 = df.at[i, 'close'] < (info_dict['profit'] * 0.37 + info_dict['open_price']) condition = condition1 & condition2 & condition3if (df.at[i, 'signal_long'] == 0) or condition:df.at[i, 'signal'] = 0 # 將真實(shí)信號設(shè)置為0# 重置相關(guān)信息info_dict = {'pre_signal': 0, 'open_price': 0, 'profit': 0}

對比簡單布林帶策略的回測結(jié)果,發(fā)現(xiàn)只有XRP的表現(xiàn)最好,回測數(shù)據(jù)為Bitfinex從2017年5月20日至2019年7月31日的XRP/USD交易對:
簡單布林帶30分鐘K線回測結(jié)果:"[550, 2.0]",1.0,13.020978994861938
此策略回測結(jié)果:"[650, 4.5]",1.0,15.271091957919307

簡單布林帶1小時K線回測結(jié)果:"[250, 4.0]",1.0,11.86845895898633
此策略回測結(jié)果:"[250, 3.5]",1.0,20.528533025681803

對其它幣種來說,BCH和BSV的回測結(jié)果略有提高,回測數(shù)據(jù)為Bitfinex從2018年11月13日至2019年7月31日的BCH/USD、BSV/USD交易對,剩下的幣種回測結(jié)果基本比簡單布林帶策略還要差得多,這引出兩個問題:

  • 是不是在追求單筆交易收益后,大行情抓不住?
  • 是不是止盈止損策略適合震蕩行情或者震蕩多的幣種?
  • 先不考慮上述問題,將37%改成(20%,80%)范圍遍歷,結(jié)果如下:
    BCH 15分鐘:"[450, 3.0, 0.3]”,1.0,0.3,7.8139314738945815
    BSV 1小時:"[800, 1.5, 0.4]",1.0,0.4,3.3144425021985353
    BTC 1小時:"[700, 1.5, 0.2]",1.0,0.2,19.07141784696794
    DASH 1小時:"[550, 1.5, 0.4]",1.0,0.4,6.313149688177662
    EOS 1小時:"[950, 0.5, 0.2]",1.0,0.2,71.07926848532772
    ETC 1小時:"[950, 1.5, 0.4]",1.0,0.4,11.392449813728463
    ETH 30分鐘:"[450, 1.5, 0.2]",1.0,0.2,12.198778802528139
    LTC 1小時:"[600, 3.0, 0.4]",1.0,0.4,22.30675663309639
    NEO 15分鐘:"[450, 3.5, 0.8]",1.0,0.8,3.045600675225343
    OMG 15分鐘:"[800, 2.5, 0.2]",1.0,0.2,7.118352066554033
    QTUM 1小時:"[350, 1.5, 0.2]",1.0,0.2,7.355790185437384
    XMR 1小時:"[850, 2.0, 0.2]",1.0,0.2,5.754729568997898
    XRP 1小時:"[250, 3.5, 0.4]",1.0,0.4,21.670168180676765
    ZEC 1小時:"[700, 1.5, 0.2]",1.0,0.2,5.86152947574348

    簡單布林帶回測結(jié)果:
    BCH 15分鐘:"[950, 2.0]",1.0,4.548056980493423
    BSV 1小時:"[750, 1.0]",1.0,2.4428266310284905
    BTC 1小時:"[500, 0.5]",1.0,19.19686781323508
    DASH 1小時:"[150, 2.5]",1.0,30.51202416576995
    EOS 1小時:"[750, 2.0]",1.0,104.33355263999118
    ETC 1小時:"[700, 4.5]",1.0,17.230519477228864
    ETH 30分鐘:"[300, 1.5]",1.0,16.251101335487025
    LTC 1小時:"[650, 3.0]",1.0,41.994913026010295
    NEO 15分鐘:"[950, 2.0]",1.0,7.509372549944163
    OMG 15分鐘:"[700, 2.5]",1.0,19.02156117250065
    QTUM 1小時:"[650, 1.0]",1.0,9.577289343702825
    XMR 1小時:"[150, 2.5]",1.0,13.031009898772105
    XRP 1小時:"[250, 4.0]",1.0,11.86845895898633
    ZEC 1小時:"[300, 1.0]",1.0,37.88666173129326

    總結(jié)

    以上是生活随笔為你收集整理的布林带止盈止损策略改进的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。

    如果覺得生活随笔網(wǎng)站內(nèi)容還不錯,歡迎將生活随笔推薦給好友。