V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
V2EX 提问指南
ccclo
V2EX  ›  问与答

有没有大佬可以帮个忙把这个 tradingview 的代码编译成一个 Python 代码

  •  
  •   ccclo · 2023-10-09 10:03:51 +08:00 · 633 次点击
    这是一个创建于 400 天前的主题,其中的信息可能已经有所发展或是发生改变。

    study(title="CM_Ultimate_MA_MTF_V2", shorttitle="CM_Ultimate_MA_MTF_V2", overlay=true) //inputs src = close useCurrentRes = input(true, title="Use Current Chart Resolution?") resCustom = input(title="Use Different Timeframe? Uncheck Box Above", type=resolution, defval="D") len = input(20, title="Moving Average Length - LookBack Period") //periodT3 = input(defval=7, title="Tilson T3 Period", minval=1) factorT3 = input(defval=7, title="Tilson T3 Factor - *.10 - so 7 = .7 etc.", minval=0) atype = input(1,minval=1,maxval=8,title="1=SMA, 2=EMA, 3=WMA, 4=HullMA, 5=VWMA, 6=RMA, 7=TEMA, 8=Tilson T3") spc=input(false, title="Show Price Crossing 1st Mov Avg - Highlight Bar?") cc = input(true,title="Change Color Based On Direction?") smoothe = input(2, minval=1, maxval=10, title="Color Smoothing - Setting 1 = No Smoothing") doma2 = input(false, title="Optional 2nd Moving Average") spc2=input(false, title="Show Price Crossing 2nd Mov Avg?") len2 = input(50, title="Moving Average Length - Optional 2nd MA") sfactorT3 = input(defval=7, title="Tilson T3 Factor - .10 - so 7 = .7 etc.", minval=0) atype2 = input(1,minval=1,maxval=8,title="1=SMA, 2=EMA, 3=WMA, 4=HullMA, 5=VWMA, 6=RMA, 7=TEMA, 8=Tilson T3") cc2 = input(true,title="Change Color Based On Direction 2nd MA?") warn = input(false, title="You Can Turn On The Show Dots Parameter Below Without Plotting 2nd MA to See Crosses") warn2 = input(false, title="If Using Cross Feature W/O Plotting 2ndMA - Make Sure 2ndMA Parameters are Set Correctly") sd = input(false, title="Show Dots on Cross of Both MA's") res = useCurrentRes ? period : resCustom //hull ma definition hullma = wma(2wma(src, len/2)-wma(src, len), round(sqrt(len))) //TEMA definition ema1 = ema(src, len) ema2 = ema(ema1, len) ema3 = ema(ema2, len) tema = 3 * (ema1 - ema2) + ema3 //Tilson T3 factor = factorT3 .10 gd(src, len, factor) => ema(src, len) * (1 + factor) - ema(ema(src, len), len) * factor t3(src, len, factor) => gd(gd(gd(src, len, factor), len, factor), len, factor) tilT3 = t3(src, len, factor) avg = atype == 1 ? sma(src,len) : atype == 2 ? ema(src,len) : atype == 3 ? wma(src,len) : atype == 4 ? hullma : atype == 5 ? vwma(src, len) : atype == 6 ? rma(src,len) : atype == 7 ? 3 * (ema1 - ema2) + ema3 : tilT3 //2nd Ma - hull ma definition hullma2 = wma(2wma(src, len2/2)-wma(src, len2), round(sqrt(len2))) //2nd MA TEMA definition sema1 = ema(src, len2) sema2 = ema(sema1, len2) sema3 = ema(sema2, len2) stema = 3 * (sema1 - sema2) + sema3

    //2nd MA Tilson T3 sfactor = sfactorT3 *.10 sgd(src, len2, sfactor) => ema(src, len2) * (1 + sfactor) - ema(ema(src, len2), len2) * sfactor st3(src, len2, sfactor) => sgd(sgd(gd(src, len2, sfactor), len2, sfactor), len2, sfactor) stilT3 = st3(src, len2, sfactor) avg2 = atype2 == 1 ? sma(src,len2) : atype2 == 2 ? ema(src,len2) : atype2 == 3 ? wma(src,len2) : atype2 == 4 ? hullma2 : atype2 == 5 ? vwma(src, len2) : atype2 == 6 ? rma(src,len2) : atype2 == 7 ? 3 * (ema1 - ema2) + ema3 : stilT3

    out = avg out_two = avg2

    out1 = security(tickerid, res, out) out2 = security(tickerid, res, out_two) //Formula for Price Crossing Moving Average #1 cr_up = open < out1 and close > out1 cr_Down = open > out1 and close < out1 //Formula for Price Crossing Moving Average #2 cr_up2 = open < out2 and close > out2 cr_Down2 = open > out2 and close < out2 //barcolor Criteria for Price Crossing Moving Average #1 iscrossUp() => cr_up iscrossDown() => cr_Down //barcolor Criteria for Price Crossing Moving Average #2 iscrossUp2() => cr_up2 iscrossDown2() => cr_Down2 ma_up = out1 >= out1[smoothe] ma_down = out1 < out1[smoothe]

    col = cc ? ma_up ? lime : ma_down ? red : aqua : aqua col2 = cc2 ? ma_up ? lime : ma_down ? red : aqua : white

    circleYPosition = out2

    plot(out1, title="Multi-Timeframe Moving Avg", style=line, linewidth=4, color = col) plot(doma2 and out2 ? out2 : na, title="2nd Multi-TimeFrame Moving Average", style=circles, linewidth=4, color=col2) plot(sd and cross(out1, out2) ? circleYPosition : na,style=cross, linewidth=15, color=aqua) //barcolor Plot for Price Crossing Moving Average #1 barcolor(spc and iscrossUp() ? (iscrossUp() ? yellow : na) : na) barcolor(spc and iscrossDown() ? (iscrossDown() ? yellow : na) : na) //barcolor Plot for Price Crossing Moving Average #2 barcolor(spc2 and iscrossUp2() ? (iscrossUp2() ? yellow : na) : na) barcolor(spc2 and iscrossDown2() ? (iscrossDown2() ? yellow : na) : na)

    2 条回复    2023-10-09 13:03:51 +08:00
    yinmin
        1
    yinmin  
       2023-10-09 11:26:37 +08:00 via iPhone
    发给 gpt4 能改 python ,然后自己再 debug
    ccclo
        2
    ccclo  
    OP
       2023-10-09 13:03:51 +08:00
    @yinmin 好的,我看下
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   3219 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 22ms · UTC 00:37 · PVG 08:37 · LAX 16:37 · JFK 19:37
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.