Python美股量化交易填坑記錄——9.TradingView輸入三點後畫出平行通道
隨著狼群逐步開啟量化之路,以後將越來越多的使用TradingView,而逐步拋棄富途,主要原因有:
TradingView可以將交易訊號透過WebHook的方式發出,便於讓機器人自動交易。
TradingView上除了有常用指標,還有各路大神自創的各類新指標,分享機制完善,交流氣氛好。
富途上已經不能檢視BTC等加密貨幣。
但是,TradingView也有一個劣勢,就是它的Pine語言學習成本高,尤其是對於已經用慣富途的人來說,不過這主要是對於進階需求來說的,簡單需求還是上手很快的,對新人比較友好。
對於狼王最常使用的平行通道來說,之前有群友問如何在TradingView上畫?我看了一下TradingView的手繪功能,雖然有一個叫做“平行通道”的功能,但只能畫出2層通道,確實跟富途的柵形線不太一樣。
剛好最近在啃Pine語言,於是我想能不能透過Pine指令碼來畫平行通道呢?
如果是類似機器學習那樣的全自動畫平行通道,十分困難,不過程式碼組的大神們已在研究,敬請期待!
我作為一個程式碼組的小渣渣,只能為大家提供一種半自動的平行通道畫法,也就是請使用者輸入平行通道的3個關鍵點(2個最低點、1個高點)後,Pine指令碼畫出所有平行線。
程式碼已全部公開:
https://
cn。tradingview。com/scri
pt/vp0lWGBq/
思路也很簡單:首先根據兩個低點座標計算平行通道斜率,然後根據高點計算平行通道寬度,最後使用迴圈畫出所有平行線。
這是效果圖:(以AAPL為例)
對比富途的效果圖:
這是使用者需要輸入的引數:(預設值來自AAPL)
除了三個關鍵點的座標外,還需要輸入高點與兩個低點相隔多少個平行通道,以及打算在低點上下畫出多少個平行通道。
再換DIS看一下效果:
DIS的引數:
最後,提醒大家一點:平行通道不是一成不變的,大家應該及時收看狼王的最新影片,及時更新自己本地的平行通道。
之後我想研究一下怎麼給這個平行通道新增警報,今天嘗試了一下,沒有找到解決辦法,看來還得請出程式碼組的大神才行~~~
關於TradingView指令碼,兩次被封殺,也是無語了!算了,直接貼出程式碼吧:
//@version=4
study(“平行通道”,overlay=true)
// calc_on_every_tick=true
// 1。根據兩個最低點計算平行通道斜率
x1 = input(title=“低點1的x”, type=input。time, defval=timestamp(‘2020-03-23T00:00-04:00’))
y1 = input(title=“低點1的y”, type=input。float, defval=52。653)
x2 = input(title=“低點2的x”, type=input。time, defval=timestamp(‘2021-03-30T00:00-04:00’))
y2 = input(title=“低點2的y”, type=input。float, defval=118。658)
// line1 = line。new(x1, y1, x2, y2, xloc=xloc。bar_time, extend=extend。both) //兩個低點連線
slope=(y2-y1)/(x2-x1)
// 2。根據高點計算平行通道寬度
x3 = input(title=“高點的x”, type=input。time, defval=timestamp(‘2021-07-09T00:00-04:00’))
y3 = input(title=“高點的y”, type=input。float, defval=145。11)
x4=x1
y4=slope*(x4-x3)+y3
n = input(title=“高點相隔多少個平行通道?”, type=input。integer, defval=2)
kuandu=(y4-y1)/n
// 3。迴圈畫出所有平行通道
m1 = input(title=“打算在低點之下畫出多少個平行通道?”, type=input。integer, defval=2)
m2 = input(title=“打算在低點之上畫出多少個平行通道?”, type=input。integer, defval=13)
for i = -m1 to m2
line1 = line。new(x1, y1+kuandu*i, x2, y2+kuandu*i, xloc=xloc。bar_time, extend=extend。both)