커뮤니티

예스랭귀지 Q&A

글쓰기
답변완료

문의 드립니다.

동일 조건에서 포인트가 누락됩니다. 수식은 아래와 같습니다. 감사합니다. Var : 조건무시(0) ; Var : 고가라인(0) , 저가라인(0) ; if sTime >= 84500 Then { 조건무시 = 0 ; if High[1] <= High and Low[1] >= Low or High[1] >= High and Low[1] <= Low then { 조건무시 = 1 ; } if 조건무시 == 0 Then { if 고가라인 == 0 Then { if High > High[1] Then { Plot1(High, "고가", Red); 고가라인 = 1 ; 저가라인 = 0 ; } } if 저가라인 == 0 Then { if Low < Low[1] Then { Plot2(Low, "저가", Blue); 고가라인 = 0 ; 저가라인 = 1 ; } } } }
프로필 이미지
juktomaa
2025-04-11
285
글번호 190024
검색
답변완료

문의드립니다

최근 100봉의 최고값과 최저값을 지표로 만들고 싶습니다 감사합니다
프로필 이미지
여름가을
2025-04-11
290
글번호 190023
지표
답변완료

항상 감사드립니다.

15분봉에서의 거래량가중이동평균 100일선 과 15분봉에서의 이동평균 50일,200일,400일선을 60분봉에서 띄우고 싶습니당 감사합니당!
프로필 이미지
yaggaboy
2025-04-11
270
글번호 190022
지표

우유 님에 의해서 삭제되었습니다.

프로필 이미지
우유
2025-04-11
7
글번호 190021
시스템
답변완료

주석요청

안녕하세요? 아래 스크립트에 주석 부탁드립니다. 감사합니다. var1 = ma(c,3); var2 = ma(c,9); var3 = ma(c,81); Condition1 = var1 < Var3 and Var2 > Var3; Condition2 = var1 > Var3 and Var2 < var3; if NextBarSdate != sDate Then { if DayClose(1) < DayOpen(1) and DayClose(0) > DayOpen(0) Then { if max(DayClose(1),DayOpen(1)) > max(DayClose(0),DayOpen(0)) and min(DayClose(1),DayOpen(1)) < min(DayClose(0),DayOpen(0)) and condition2 == true Then Buy("b1",AtMarket); if max(DayClose(1),DayOpen(1)) < max(DayClose(0),DayOpen(0)) and min(DayClose(1),DayOpen(1)) > min(DayClose(0),DayOpen(0)) and condition2 == true then Buy("b2",AtMarket); } if DayClose(1) > DayOpen(1) and DayClose(0) < DayOpen(0) Then { if max(DayClose(1),DayOpen(1)) > max(DayClose(0),DayOpen(0)) and min(DayClose(1),DayOpen(1)) < min(DayClose(0),DayOpen(0)) and condition1 == true Then Sell("s1",AtMarket); if max(DayClose(1),DayOpen(1)) < max(DayClose(0),DayOpen(0)) and min(DayClose(1),DayOpen(1)) > min(DayClose(0),DayOpen(0))and condition1 == true Then Sell("s2",AtMarket); } } if MarketPosition == 1 Then { if IsEntryName("b1",0) == true and BarsSinceEntry == 7 Then { if NextBarOpen >= EntryPrice Then ExitLong("bx1",AtMarket); Else Sell("s3",AtMarket); } if IsEntryName("b2",0) == true and BarsSinceEntry == 7 Then { if NextBarOpen >= EntryPrice Then ExitLong("bx2",AtMarket); Else Sell("s4",AtMarket); } if IsEntryName("b3",0) == true and BarsSinceEntry == 7 Then { ExitLong("bx3",AtMarket); } if IsEntryName("b4",0) == true and BarsSinceEntry == 7 Then { ExitLong("bx4",AtMarket); } } if MarketPosition == -1 Then { if IsEntryName("s1",0) == true and BarsSinceEntry == 7 Then { if NextBarOpen <= EntryPrice Then ExitShort("sx1",AtMarket); Else Buy("b3",AtMarket); } if IsEntryName("s2",0) == true and BarsSinceEntry == 7 Then { if NextBarOpen <= EntryPrice Then ExitShort("sx2",AtMarket); Else Buy("b4",AtMarket); } if IsEntryName("s3",0) == true and BarsSinceEntry == 7 Then { ExitShort("sx3",AtMarket); } if IsEntryName("s4",0) == true and BarsSinceEntry == 7 Then { ExitShort("sx4",AtMarket); } }
프로필 이미지
흰둥이아빠
2025-04-10
203
글번호 190020
시스템
답변완료

수식변환 부탁드립니다.

안녕하세요 indicator("Power Root SuperTrend [AlgoAlpha]", "AlgoAlpha - Power Root", true, max_lines_count = 500) import TradingView/ta/8 atrMult = input.float(4.5, "Factor") atrlen = input.int(12, "ATR Length") rsmlen = input.int(3, "Root-Mean-Square Length") tplen = input.int(14, "RSI Take-Profit Length") green = input.color(#00ffbb, "Bullish Color", group = "Appearance") red = input.color(#ff1100, "Bearish Color", group = "Appearance") // SuperTrend Function superTrendCalc(multiplier, atrLength, source) => atrValue1 = ta.atr(atrLength) upperLevel = source + multiplier * atrValue1 lowerLevel = source - multiplier * atrValue1 previousLowerLevel = nz(lowerLevel[1]) previousUpperLevel = nz(upperLevel[1]) // Ensure continuity of lower and upper bands lowerLevel := lowerLevel > previousLowerLevel or source[1] < previousLowerLevel ? lowerLevel : previousLowerLevel upperLevel := upperLevel < previousUpperLevel or source[1] > previousUpperLevel ? upperLevel : previousUpperLevel // Determine direction and SuperTrend int trendDirection = na float trendValue = na previousTrend = trendValue[1] // Initialize direction if na(atrValue1[1]) trendDirection := 1 else if previousTrend == previousUpperLevel trendDirection := source > upperLevel ? -1 : 1 else trendDirection := source < lowerLevel ? 1 : -1 // Set SuperTrend value based on direction trendValue := trendDirection == -1 ? lowerLevel : upperLevel [trendValue, trendDirection] [superTrendValue, trendDirection] = superTrendCalc(atrMult, atrlen, ta.rms(close, rsmlen)) dist = math.abs(close-superTrendValue) var chg = 0.0 var tp1 = 0.0 var tp2 = 0.0 var tp3 = 0.0 var tp4 = 0.0 var tp5 = 0.0 var tp6 = 0.0 var tp7 = 0.0 lvlCol = trendDirection > 0 ? red : green var keys = array.new_line() var printedtp1 = 0 var printedtp2 = 0 var printedtp3 = 0 var printedtp4 = 0 var printedtp5 = 0 var printedtp6 = 0 var printedtp7 = 0 if ta.cross(trendDirection, 0) keys.clear() printedtp1 := 0 printedtp2 := 0 printedtp3 := 0 printedtp4 := 0 printedtp5 := 0 printedtp6 := 0 printedtp7 := 0 chg := math.abs(superTrendValue-superTrendValue[1]) tp1 := superTrendValue[1] + (trendDirection > 0 ? -chg : chg) tp2 := superTrendValue[1] + (trendDirection > 0 ? -chg * 2 : chg * 2) tp3 := superTrendValue[1] + (trendDirection > 0 ? -chg * 3 : chg * 3) tp4 := superTrendValue[1] + (trendDirection > 0 ? -chg * 4 : chg * 4) tp5 := superTrendValue[1] + (trendDirection > 0 ? -chg * 5 : chg * 5) tp6 := superTrendValue[1] + (trendDirection > 0 ? -chg * 6 : chg * 6) tp7 := superTrendValue[1] + (trendDirection > 0 ? -chg * 7 : chg * 7) keys.push(line.new(bar_index[1], tp1, bar_index, tp1, color = lvlCol, width = 2)) printedtp1 := 1 tp = ta.crossunder(ta.rsi(dist, tplen), 60) extreme = trendDirection > 0 ? low : high extreme_tp1_dist = math.abs(extreme - tp1) extreme_tp2_dist = math.abs(extreme - tp2) extreme_tp3_dist = math.abs(extreme - tp3) extreme_tp4_dist = math.abs(extreme - tp4) extreme_tp5_dist = math.abs(extreme - tp5) extreme_tp6_dist = math.abs(extreme - tp6) extreme_tp7_dist = math.abs(extreme - tp7) p = plot(superTrendValue, color = trendDirection > 0 ? color.new(red, 70) : color.new(green, 70)) upTrend = plot(close > superTrendValue ? superTrendValue : na, color = color.new(green, 70), style = plot.style_linebr) //, force_overlay = true downTrend = plot(close < superTrendValue ? superTrendValue : na, color = color.new(red, 70), style = plot.style_linebr, force_overlay = false) //, force_overlay = true bodyMiddle = plot(barstate.isfirst ? na : (open + close) / 2, "Body Middle",display = display.none) fill(bodyMiddle, upTrend, (open + close) / 2, superTrendValue, color.new(green, 95), color.new(green, 70)) fill(bodyMiddle, downTrend, superTrendValue, (open + close) / 2, color.new(red, 70), color.new(red, 95)) plotchar(tp and trendDirection > 0, "RSI-Based Shorts TP", "X", location.belowbar, red, size = size.tiny) plotchar(tp and trendDirection < 0, "RSI-Based Longs TP", "X", location.abovebar, green, size = size.tiny) if printedtp2 == 0 and extreme_tp2_dist < extreme_tp1_dist keys.push(line.new(bar_index[1], tp2, bar_index, tp2, color = lvlCol, width = 2)) printedtp2 := 1 if printedtp3 == 0 and extreme_tp3_dist < extreme_tp2_dist keys.push(line.new(bar_index[1], tp3, bar_index, tp3, color = lvlCol, width = 2)) printedtp3 := 1 if printedtp4 == 0 and extreme_tp4_dist < extreme_tp3_dist keys.push(line.new(bar_index[1], tp4, bar_index, tp4, color = lvlCol, width = 2)) printedtp4 := 1 if printedtp5 == 0 and extreme_tp5_dist < extreme_tp4_dist keys.push(line.new(bar_index[1], tp5, bar_index, tp5, color = lvlCol, width = 2)) printedtp5 := 1 if printedtp6 == 0 and extreme_tp6_dist < extreme_tp5_dist keys.push(line.new(bar_index[1], tp6, bar_index, tp6, color = lvlCol, width = 2)) printedtp6 := 1 if printedtp7 == 0 and extreme_tp7_dist < extreme_tp6_dist keys.push(line.new(bar_index[1], tp7, bar_index, tp7, color = lvlCol, width = 2)) printedtp7 := 1 if keys.size() > 0 aSZ = keys.size() for i = aSZ - 1 to 0 keys.get(i).set_x2(bar_index) // Alert when SuperTrend changes direction alertcondition(ta.cross(trendDirection, 0), title="SuperTrend Direction Change", message="SuperTrend has changed direction") // Alert when each TP line is drawn alertcondition(printedtp1 == 1, title="TP1 Line Drawn", message="TP1 line has been drawn") alertcondition(printedtp2 == 1, title="TP2 Line Drawn", message="TP2 line has been drawn") alertcondition(printedtp3 == 1, title="TP3 Line Drawn", message="TP3 line has been drawn") alertcondition(printedtp4 == 1, title="TP4 Line Drawn", message="TP4 line has been drawn") alertcondition(printedtp5 == 1, title="TP5 Line Drawn", message="TP5 line has been drawn") alertcondition(printedtp6 == 1, title="TP6 Line Drawn", message="TP6 line has been drawn") alertcondition(printedtp7 == 1, title="TP7 Line Drawn", message="TP7 line has been drawn") // Alert for crossing under RSI alertcondition(tp, title="Take-Profit Condition", message="Take-Profit condition met")
프로필 이미지
이글루
2025-04-10
381
글번호 190019
지표
답변완료

문의 드립니다.

늘 수고가 많습니다. 현물 매수입니다. *** 당일 최고가를 100% 로 환산 해서 계산 *** 예) 주가가 10% 상승후 6% 하락은 60% 하락으로 적용 매수 당일 최고가 대비 -15% 하락시 1차매수 100만원 당일 최고가 대비 -30% 하락시 2차매수 100만원 당일 최고가 대비 -50% 하락시 3차매수 100만원 매도 3% 상승시 50 % 매도 6% 상승시 전량 매도
프로필 이미지
하늘북
2025-04-10
211
글번호 190018
시스템
답변완료

예스트레이더 부탁드립니다

아래 수식 예스트레이더 검색식 부탁드립니다. A=Sum(H > highest(H(1), 29)); B=valuewhen(1, date(1)!=date, A(1)); D=A-B; D== 1 && D(1) != 1
프로필 이미지
파크에버뉴
2025-04-10
239
글번호 190017
종목검색
답변완료

질문드립니다

A = 평균(종가, 40, 1) * 1.3 <= 종가 and 평균(거래대금/종가, 40, 1) * 6 <= 평균(거래대금/종가, 2) and 평균(((고가-저가)/((고가+저가)/2)), 40, 1) * 1.5 <= 평균(((고가-저가)/((고가+저가)/2)), 2) and 종가>종가(1); B = sum(A); ((B(1) - B(11) == 0 and A == 1) or (B(4) - B(14) == 3 and A == 1)) 위의 조건을 검색식으로 부탁드립니다
프로필 이미지
재료스윙
2025-04-10
236
글번호 190016
검색
답변완료

안녕하세요.문의 드립니다.

문의 드립니다 PVI() 와 NVI() 갭보정을 할 수 있게 해주셨으면 합니다. 심하게 갭이 발생하면 데이타 쓰는데 한두시간은 기다려야 수치가 전일과 비교되니 랭귀지에서 어떻게 수정되는지 부탁드립니다. 단순 전일 종가에서만이라도 출발되게 해주셨으면 합니다.
프로필 이미지
구름달
2025-04-10
236
글번호 190015
지표