ट्रेंडिलियस

लेखक:चाओझांग, दिनांकः 2022-05-17 13:44:03
टैगःबढ़ना

यह संकेतक यह निर्धारित करने के लिए उच्चतम और निम्नतम बिंदुओं के रोलिंग मध्य का उपयोग करता है कि क्या संपत्ति वर्तमान में अपट्रेंड या डाउनट्रेंड में है।

यह वर्तमान प्रवृत्ति को देखने में मदद करता है।

पैरामीटरः 1/ लंबाई: उस समय की अवधि जिसमें उच्चतम और निम्नतम पर विचार किया जाएगा। 2/ मूल्य स्रोत: वह स्रोत जिसका उपयोग गणना के लिए किया जाएगा 3/ आक्रामक मोडः यदि यह सच है, तो प्रवृत्ति की दिशा मूल्य परिवर्तन के प्रति अधिक संवेदनशील होगी और तेजी से ऊपर की ओर से नीचे की ओर और दूसरी ओर चलेगी।

शोर से बचने के लिए अधिक समय पर प्रयोग करें (4h, 12h, 1d आदि)

अस्वीकरणः

यह व्यापार करने की सलाह नहीं है। अपने जोखिम पर उपयोग करें। इस स्क्रिप्ट के लेखक को इस संकेतक के उपयोग से प्रत्यक्ष या अप्रत्यक्ष रूप से होने वाले किसी भी नुकसान के लिए जिम्मेदार नहीं ठहराया जा सकता है।

बैकटेस्ट

img


/*backtest
start: 2022-05-09 00:00:00
end: 2022-05-15 23:59:00
period: 30m
basePeriod: 15m
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/

// This source code is subject to the terms of the Mozilla Public License 2.0 at https://mozilla.org/MPL/2.0/
// © levieux

//@version=5
indicator("Trendelicious", overlay=true)

length=input(defval=30)
price=input(defval=hl2, title="Price Source")
aggressiveMode=input(defval=false,title="Aggressive Mode")

isUptrend(price,length,aggressiveMode) =>
    uptrend= false
    PP= (ta.highest(price,length)+ta.lowest(price,length))/2
    ppChange= ta.change(PP,1)
    ppFlat= ppChange==0
    priceOverPP=ta.crossover(price,PP)
    priceUnderPP=ta.crossunder(price,PP)
    risingPrice= ta.rising(price,5)
    risingPP= ta.rising(PP,5)
    fallingPrice= ta.falling(price,5)
    fallingPP= ta.falling(PP,5)

    uptrendCondition1= price>PP and (ppChange>0 or (ppChange==0 and aggressiveMode)) and (ppChange[1]>0 or (ppChange[1]==0 and aggressiveMode)) and ppChange[2]>=0 and ppChange[3]>=0
    uptrendCondition2= (priceOverPP or risingPrice) and ppFlat and aggressiveMode
    uptrendCondition3= risingPrice and fallingPP and aggressiveMode
    downtrendCondition1= price < PP and (ppChange<0 or (ppChange==0 and aggressiveMode)) and (ppChange[1]<0 or (ppChange[1]==0 and aggressiveMode)) and ppChange[2]<=0 and ppChange[3]<=0
    downtrendCondition2= (priceUnderPP or fallingPrice) and ppFlat and aggressiveMode
    downtrendCondition3= fallingPrice and risingPP and aggressiveMode

    if uptrendCondition1 or uptrendCondition2 or uptrendCondition3
        uptrend:= true
    else if downtrendCondition1 or downtrendCondition2 or downtrendCondition3
        uptrend:= false
    else
        uptrend:= uptrend[1]
    [PP,uptrend]

[trendline,uptrend]= isUptrend(price,length,aggressiveMode)

baseLinePlot = plot((open + close) / 2, display=display.none)
upTrendPlot = plot(uptrend ? trendline : na, "Up Trend", color = color.green, style=plot.style_linebr)
downTrendPlot = plot(not uptrend ? trendline : na, "Down Trend", color = color.red, style=plot.style_linebr)
fill(baseLinePlot, upTrendPlot, color.new(color.green, 90), fillgaps=false)
fill(baseLinePlot, downTrendPlot, color.new(color.red, 90), fillgaps=false)

if uptrend
    strategy.entry("Enter Long", strategy.long)
else if not uptrend
    strategy.entry("Enter Short", strategy.short)

संबंधित

अधिक