欧美一区二区三区老妇人-欧美做爰猛烈大尺度电-99久久夜色精品国产亚洲a-亚洲福利视频一区二区

python如何實(shí)現(xiàn)SuperTrendV.1超級(jí)趨勢(shì)線系統(tǒng)

這篇文章將為大家詳細(xì)講解有關(guān)python如何實(shí)現(xiàn)SuperTrend V.1超級(jí)趨勢(shì)線系統(tǒng),小編覺(jué)得挺實(shí)用的,因此分享給大家做個(gè)參考,希望大家閱讀完這篇文章后可以有所收獲。

創(chuàng)新互聯(lián)建站-專業(yè)網(wǎng)站定制、快速模板網(wǎng)站建設(shè)、高性價(jià)比懷來(lái)網(wǎng)站開(kāi)發(fā)、企業(yè)建站全套包干低至880元,成熟完善的模板庫(kù),直接使用。一站式懷來(lái)網(wǎng)站制作公司更省心,省錢(qián),快速模板網(wǎng)站建設(shè)找我們,業(yè)務(wù)覆蓋懷來(lái)地區(qū)。費(fèi)用合理售后完善,10年實(shí)體公司更值得信賴。

系統(tǒng)介紹

CMC Markets 新一代智能交易系統(tǒng) —— 超級(jí)趨勢(shì)線(Supertrend)

這里有一篇文章介紹這個(gè)系統(tǒng)。

python如何實(shí)現(xiàn)SuperTrend V.1超級(jí)趨勢(shì)線系統(tǒng)

在CMC Markets中的新一代智能交易系統(tǒng)中,在技術(shù)指標(biāo)中選取“超級(jí)趨勢(shì)線”調(diào)取即可使用,

如圖中所示,可以根據(jù)自身喜好對(duì)上漲的信號(hào)、下跌的信號(hào)調(diào)節(jié)“顏色和粗細(xì)”。

那么什么是超趨勢(shì)指標(biāo)?在理解超趨勢(shì)指標(biāo)公式之前,理解ATR是必要的,因?yàn)槌厔?shì)使用ATR值來(lái)計(jì)算指標(biāo)值。

其中的主要算法下面也有一張圖來(lái)介紹

python如何實(shí)現(xiàn)SuperTrend V.1超級(jí)趨勢(shì)線系統(tǒng)

大致看一下,主要描述是HL2(k線均價(jià))乘以n倍ATR的通道。做趨勢(shì)突破。

但文章寫(xiě)得比較簡(jiǎn)略。沒(méi)有詳細(xì)的算法。隨后我想到了最牛的社區(qū)Tradingview。

果不奇然。上面果然有。

python如何實(shí)現(xiàn)SuperTrend V.1超級(jí)趨勢(shì)線系統(tǒng)

從圖上看,還是比較切合趨勢(shì)的。但可惜的是它只是一個(gè)Alert的報(bào)警信號(hào)。

學(xué)習(xí)源碼

看著代碼還不算太長(zhǎng),那我們就翻譯過(guò)來(lái)試一下吧。!(っ??ω??)っ???!

python如何實(shí)現(xiàn)SuperTrend V.1超級(jí)趨勢(shì)線系統(tǒng)

完整pine代碼如上。。

四、代碼轉(zhuǎn)化

這里我們?cè)贔MZ新建一個(gè)策略,起名SuperTrade

python如何實(shí)現(xiàn)SuperTrend V.1超級(jí)趨勢(shì)線系統(tǒng)

接著我們來(lái)設(shè)置2個(gè)參數(shù)Factor、Pd

python如何實(shí)現(xiàn)SuperTrend V.1超級(jí)趨勢(shì)線系統(tǒng)

為了更好的簡(jiǎn)化代碼的操作,便于理解,這樣要用到python的高級(jí)數(shù)據(jù)擴(kuò)展包pandas

中午吃飯的時(shí)候我問(wèn)夢(mèng)夢(mèng)老師,F(xiàn)MZ是否支持這個(gè)庫(kù)。下午一看居然可以用了。

夢(mèng)夢(mèng)老師真的太厲害了。

1.我們要導(dǎo)入pandas庫(kù)time庫(kù)

2.在main函數(shù)當(dāng)中設(shè)置使用季度合約(主要跑okex)

3.設(shè)定一個(gè)循環(huán)doTicker()15分鐘檢測(cè)1次。

將代碼跑在15分鐘的周期上

接著我們?cè)赿oTicker()中寫(xiě)主要策略。

python如何實(shí)現(xiàn)SuperTrend V.1超級(jí)趨勢(shì)線系統(tǒng)

4.我們要取回k線的OHCLV 所以用GetRecords()

5.我們將取回的數(shù)據(jù)導(dǎo)入pandas M15 = pd.DataFrame(records)

6.我們要修改表的頭部標(biāo)簽。 M15.columns = ['time','open','high','low','close','volume','OpenInterest']

其實(shí)就是將'open','high','low','close’ 的首字母改成小寫(xiě),便于后期寫(xiě)代碼不要一會(huì)大寫(xiě)一會(huì)小寫(xiě)。

python如何實(shí)現(xiàn)SuperTrend V.1超級(jí)趨勢(shì)線系統(tǒng)

7.給數(shù)據(jù)集合增加一列hl2 hl2=(high+low)/2

python如何實(shí)現(xiàn)SuperTrend V.1超級(jí)趨勢(shì)線系統(tǒng)

8.接著我們來(lái)計(jì)算ATR

因?yàn)锳TR的計(jì)算要導(dǎo)入一個(gè)變量length,它的取值是Pd

接著我們通過(guò)查閱麥語(yǔ)言手冊(cè),ATR真實(shí)波動(dòng)幅度均值的算法步驟如下:

TR : MAX(MAX((HIGH-LOW),ABS(REF(CLOSE,1)-HIGH)),ABS(REF(CLOSE,1)-LOW));

ATR : RMA(TR,N)

其中TR的值取下面3個(gè)差值的最大一個(gè)

1、當(dāng)前交易日的最高價(jià)與最低價(jià)間的波幅 HIGH-LOW

2、前一交易日收盤(pán)價(jià)與當(dāng)個(gè)交易日最高價(jià)間的波幅 REF(CLOSE,1)-HIGH)

3、前一交易日收盤(pán)價(jià)與當(dāng)個(gè)交易日最低價(jià)間的波幅 REF(CLOSE,1)-LOW)

所以TR : MAX(MAX((HIGH-LOW),ABS(REF(CLOSE,1)-HIGH)),ABS(REF(CLOSE,1)-LOW));

在python計(jì)算中

python如何實(shí)現(xiàn)SuperTrend V.1超級(jí)趨勢(shì)線系統(tǒng)

要先設(shè)立一個(gè)prev_close 去取close在上一行的數(shù)據(jù),也就是將close右移1格成立一個(gè)新的參數(shù)

python如何實(shí)現(xiàn)SuperTrend V.1超級(jí)趨勢(shì)線系統(tǒng)

接著定義一個(gè)中間變量 記錄TR的3個(gè)對(duì)比值的數(shù)組。(HIGH-LOW)(high-prev_close)(low-prev_close)

python如何實(shí)現(xiàn)SuperTrend V.1超級(jí)趨勢(shì)線系統(tǒng)

我們?cè)跀?shù)據(jù)集合當(dāng)中定義新的一列取名TR,TR的取值是取中間變量絕對(duì)值的最大一個(gè),使用abs()和max()函數(shù)

python如何實(shí)現(xiàn)SuperTrend V.1超級(jí)趨勢(shì)線系統(tǒng)

最后我們要計(jì)算ATR的值,ATR : RMA(TR,N),據(jù)查RMA的算法其實(shí)就是一個(gè)固定值變種的EMA算法。

N是我們導(dǎo)入的變量,其中ATR的默認(rèn)參數(shù)是14。這里我們導(dǎo)入alpha=length的倒數(shù)。

===

然后用ewm算法計(jì)算ema

完整ATR計(jì)算過(guò)程如下

python如何實(shí)現(xiàn)SuperTrend V.1超級(jí)趨勢(shì)線系統(tǒng)

9始計(jì)算Up和Dn

python如何實(shí)現(xiàn)SuperTrend V.1超級(jí)趨勢(shì)線系統(tǒng)

Up=hl2 -(Factor * atr)

Dn=hl2 +(Factor * atr)

是不是很簡(jiǎn)單呢。

下面是TV當(dāng)中15行-21行的核心代碼段

python如何實(shí)現(xiàn)SuperTrend V.1超級(jí)趨勢(shì)線系統(tǒng)

這一段的主要意思是想表達(dá),

如果處于看漲階段,(下方線)TrendUp = max(Up,TrendUp[1])

如果處于下跌階段,(上方線)TrendDown=min(Dn,TrendDown[1])

也就是說(shuō)在一個(gè)趨勢(shì)中,ATR的值一直在使用一種類似強(qiáng)盜布林策略的技術(shù)。

不斷將通道的另一側(cè)收窄

這里TrendUp和TrendDown每一次的計(jì)算都需要進(jìn)行自我迭代。

就是每一步都要拿上一步的自己來(lái)計(jì)算。

所以要對(duì)數(shù)據(jù)集合做循環(huán)遍歷。

這里先要對(duì)數(shù)據(jù)集合新建字段TrendUp,TrendDown,Trend,linecolor。并給定他們一個(gè)初始值

接著使用fillna(0)語(yǔ)法將之前計(jì)算的結(jié)果中帶有空值的數(shù)據(jù)填上0

python如何實(shí)現(xiàn)SuperTrend V.1超級(jí)趨勢(shì)線系統(tǒng)

啟用一個(gè)for循環(huán)

在循環(huán)中采用python三目運(yùn)算

python如何實(shí)現(xiàn)SuperTrend V.1超級(jí)趨勢(shì)線系統(tǒng)

計(jì)算TrendUp

TrendUp = MAX(Up,TrendUp[-1]) if close[-1]>TrendUp[-1] else Up

大致意思是 如果 上一個(gè)close>上一個(gè)TrendUp,成立取Up和上一個(gè)TrendUp當(dāng)中最大的值,不成立取Up值,并傳遞給當(dāng)前TrendUp

python如何實(shí)現(xiàn)SuperTrend V.1超級(jí)趨勢(shì)線系統(tǒng)

同理,計(jì)算TrendDown

TrendDown=min(Dn,TrendDown[-1]) if close[-1]<TrendDown[-1] else Dn

大致意思是 如果 上一個(gè)close<上一個(gè)TrendDown,成立取Dn和上一個(gè)TrendDown當(dāng)中最小的值,不成立取Dn值,并傳遞給當(dāng)前TrendDown

python如何實(shí)現(xiàn)SuperTrend V.1超級(jí)趨勢(shì)線系統(tǒng)

下面是計(jì)算控制方向的flag,我簡(jiǎn)化了一下偽代碼

Trend= 1 if (close > TrendDown[-1]) else (x)

x = -1 if (close< TrendUp[-1]) else Trend[-1]

意義是是 如果 收盤(pán)價(jià)>上一個(gè) TrendDown 則取1(看多) 不成立取x

如果 收盤(pán)價(jià)<上一個(gè) TrendUp 則取-1(看空)不成立取上一個(gè)Trend (意思是是不變)

翻譯成圖像語(yǔ)言就是突破上軌轉(zhuǎn)換flag看多,突破下軌轉(zhuǎn)換flag看空,其他時(shí)間不變。

python如何實(shí)現(xiàn)SuperTrend V.1超級(jí)趨勢(shì)線系統(tǒng)

計(jì)算Tsl和Linecolor

Tsl= rendUp if (Trend==1) else TrendDown

Tsl 是用來(lái)在圖像上表示SuperTrend 的值。意思是看多的時(shí)候在圖上標(biāo)記下軌,看空的時(shí)候在圖上標(biāo)記上軌。

linecolor= 'green' if (Trend==1) else 'red'

linecolor 的含義是 如果看多 則標(biāo)記綠線 ,如果看空則標(biāo)記空色(主要是用途Tradingview展示)

python如何實(shí)現(xiàn)SuperTrend V.1超級(jí)趨勢(shì)線系統(tǒng)

接著23-30行的代碼主要是plot繪圖 這里不做詳解。

最后還有2行代碼用于買(mǎi)入賣(mài)出信號(hào)控制

Tradingview中,他的含義是 反轉(zhuǎn)了Flag以后給出信號(hào)

將條件語(yǔ)句轉(zhuǎn)換成為python。

如果上一個(gè)Trend flag從-1變成1 代表突破上方阻力 開(kāi)多

如果上一個(gè)Trend flag從1變成-1 代表突破下發(fā)支撐 開(kāi)空

python如何實(shí)現(xiàn)SuperTrend V.1超級(jí)趨勢(shì)線系統(tǒng)

本段完整代碼如下:

python如何實(shí)現(xiàn)SuperTrend V.1超級(jí)趨勢(shì)線系統(tǒng)

python如何實(shí)現(xiàn)SuperTrend V.1超級(jí)趨勢(shì)線系統(tǒng)

python如何實(shí)現(xiàn)SuperTrend V.1超級(jí)趨勢(shì)線系統(tǒng)

五、全部代碼

我調(diào)整了一下整體的代碼結(jié)構(gòu)。

并將做多做空相關(guān)下單指令合并到策略中。

下面是完整代碼

python如何實(shí)現(xiàn)SuperTrend V.1超級(jí)趨勢(shì)線系統(tǒng)

公開(kāi)策略連接https://www.fmz.com/strategy/200625

六、回測(cè)與總結(jié)

我們選取了近一年的數(shù)據(jù)進(jìn)行回測(cè)。

使用okex季度合約 15分鐘周期。

設(shè)定的參數(shù)是,

Factor=3

Pd=45

vol=100(每次下單100張)

所得年化收益,約33%。

總體來(lái)說(shuō)回撤并不是很大,

其中主要是312的大跌對(duì)系統(tǒng)產(chǎn)生了比較大的沖擊,

如果沒(méi)有312的話收益應(yīng)該會(huì)比較好看。

python如何實(shí)現(xiàn)SuperTrend V.1超級(jí)趨勢(shì)線系統(tǒng)

七、寫(xiě)在最后

SuperTrend是一個(gè)非常不錯(cuò)的交易系統(tǒng)

SuperTrend系統(tǒng)的主要原理是采用ATR通道突破策略(類似于肯特通道)

但其變化的地方主要在于使用了強(qiáng)盜布林的收窄策略,或者說(shuō)是逆向的唐奇安原理。

在行情運(yùn)行中不斷收窄上下通道。

以便達(dá)到通道突破轉(zhuǎn)向的操作。(一旦通道突破,上下軌恢復(fù)初始值)

我在TradingView上把up dn TrendUp TrendDn 分別plot了出來(lái)

這樣便于更好的理解這個(gè)策略

一目了然

python如何實(shí)現(xiàn)SuperTrend V.1超級(jí)趨勢(shì)線系統(tǒng)

另外github上還有一個(gè)js的版本。js我不是很懂,但從if語(yǔ)句看好像有點(diǎn)問(wèn)題。

地址是https://github.com/Dodo33/gekko-supertrend-strategy/blob/master/Supertrend.js

關(guān)于“python如何實(shí)現(xiàn)SuperTrend V.1超級(jí)趨勢(shì)線系統(tǒng)”這篇文章就分享到這里了,希望以上內(nèi)容可以對(duì)大家有一定的幫助,使各位可以學(xué)到更多知識(shí),如果覺(jué)得文章不錯(cuò),請(qǐng)把它分享出去讓更多的人看到。

網(wǎng)站題目:python如何實(shí)現(xiàn)SuperTrendV.1超級(jí)趨勢(shì)線系統(tǒng)
本文路徑:http://chinadenli.net/article20/jeegjo.html

成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供Google、靜態(tài)網(wǎng)站網(wǎng)站制作、網(wǎng)站營(yíng)銷(xiāo)網(wǎng)站設(shè)計(jì)、網(wǎng)站導(dǎo)航

廣告

聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請(qǐng)盡快告知,我們將會(huì)在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如需處理請(qǐng)聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來(lái)源: 創(chuàng)新互聯(lián)

網(wǎng)站優(yōu)化排名
精品人妻一区二区三区免费| 欧美日韩有码一二三区| 国产三级视频不卡在线观看| 亚洲最大的中文字幕在线视频| 欧美又黑又粗大又硬又爽| 亚洲欧美日韩在线看片| 久久碰国产一区二区三区| 欧美日韩免费观看视频| 欧美日韩亚洲精品内裤| 欧美在线观看视频免费不卡| 久久这里只有精品中文字幕| 国产一级性生活录像片| 91亚洲熟女少妇在线观看| 欧美黑人在线精品极品| 粉嫩内射av一区二区| 又大又长又粗又猛国产精品| 亚洲中文字幕免费人妻| 久久青青草原中文字幕| 国产亚州欧美一区二区| 国产一区二区三区免费福利| 中文字幕亚洲精品在线播放| 男女午夜在线免费观看视频| 亚洲品质一区二区三区 | 九九热视频经典在线观看| 欧美日韩综合在线第一页| 午夜视频在线观看日韩| 91超精品碰国产在线观看| 激情五月天深爱丁香婷婷| 99日韩在线视频精品免费| 男女激情视频在线免费观看| 国产91麻豆精品成人区| 中国美女草逼一级黄片视频| 91在线国内在线中文字幕| 欧美一级特黄特色大色大片| 国产精品美女午夜福利| 情一色一区二区三区四| 蜜臀人妻一区二区三区| 91在线国内在线中文字幕| 伊人久久五月天综合网| 偷拍偷窥女厕一区二区视频| 日本高清视频在线观看不卡|