답변완료
부탁드립니다.
이전 문의드릴때 일정시간을 넘어가는 수식이기에 변형이 힘들다고 하셔서 부분적으로 문의 드립니다. 꼭좀 부탁 드립니다.
indicator('HIGH AND LOW Optimized Trend Tracker', 'HL OTT', overlay=true)
length = input.int(2, 'OTT Period', minval=1)
percent = input.float(0.6, 'OTT Optimization Coeff', step=0.1, minval=0)
hllength = input.int(10, 'Highest and Lowest Length', minval=1)
src = ta.highest(high, hllength)
srcl = ta.lowest(low, hllength)
highlighting = input(title='Highlighter On/Off ?', defval=true)
mav = input.string(title='Moving Average Type', defval='VAR', options=['SMA', 'EMA', 'WMA', 'DEMA', 'TMA', 'VAR', 'WWMA', 'ZLEMA', 'TSF', 'HULL'])
Var_Func(src, length) =>
valpha = 2 / (length + 1)
vud1 = src > src[1] ? src - src[1] : 0
vdd1 = src < src[1] ? src[1] - src : 0
vUD = math.sum(vud1, 9)
vDD = math.sum(vdd1, 9)
vCMO = nz((vUD - vDD) / (vUD + vDD))
VAR = 0.0
VAR := nz(valpha * math.abs(vCMO) * src) + (1 - valpha * math.abs(vCMO)) * nz(VAR[1])
VAR
VAR = Var_Func(src, length)
DEMA = 2 * ta.ema(src, length) - ta.ema(ta.ema(src, length), length)
Wwma_Func(src, length) =>
wwalpha = 1 / length
WWMA = 0.0
WWMA := wwalpha * src + (1 - wwalpha) * nz(WWMA[1])
WWMA
WWMA = Wwma_Func(src, length)
Zlema_Func(src, length) =>
zxLag = length / 2 == math.round(length / 2) ? length / 2 : (length - 1) / 2
zxEMAData = src + src - src[zxLag]
ZLEMA = ta.ema(zxEMAData, length)
ZLEMA
ZLEMA = Zlema_Func(src, length)
Tsf_Func(src, length) =>
lrc = ta.linreg(src, length, 0)
lrc1 = ta.linreg(src, length, 1)
lrs = lrc - lrc1
TSF = ta.linreg(src, length, 0) + lrs
TSF
TSF = Tsf_Func(src, length)
HMA = ta.wma(2 * ta.wma(src, length / 2) - ta.wma(src, length), math.round(math.sqrt(length)))
Var_Funcl(srcl, length) =>
valphal = 2 / (length + 1)
vud1l = srcl > srcl[1] ? srcl - srcl[1] : 0
vdd1l = srcl < srcl[1] ? srcl[1] - srcl : 0
vUDl = math.sum(vud1l, 9)
vDDl = math.sum(vdd1l, 9)
vCMOl = nz((vUDl - vDDl) / (vUDl + vDDl))
VARl = 0.0
VARl := nz(valphal * math.abs(vCMOl) * srcl) + (1 - valphal * math.abs(vCMOl)) * nz(VARl[1])
VARl
VARl = Var_Funcl(srcl, length)
DEMAl = 2 * ta.ema(srcl, length) - ta.ema(ta.ema(srcl, length), length)
Wwma_Funcl(srcl, length) =>
wwalphal = 1 / length
WWMAl = 0.0
WWMAl := wwalphal * srcl + (1 - wwalphal) * nz(WWMAl[1])
WWMAl
WWMAl = Wwma_Funcl(srcl, length)
Zlema_Funcl(srcl, length) =>
zxLagl = length / 2 == math.round(length / 2) ? length / 2 : (length - 1) / 2
zxEMADatal = srcl + srcl - srcl[zxLagl]
ZLEMAl = ta.ema(zxEMADatal, length)
ZLEMAl
ZLEMAl = Zlema_Funcl(srcl, length)
Tsf_Funcl(srcl, length) =>
lrcl = ta.linreg(srcl, length, 0)
lrc1l = ta.linreg(srcl, length, 1)
lrsl = lrcl - lrc1l
TSFl = ta.linreg(srcl, length, 0) + lrsl
TSFl
TSFl = Tsf_Funcl(srcl, length)
HMAl = ta.wma(2 * ta.wma(srcl, length / 2) - ta.wma(srcl, length), math.round(math.sqrt(length)))
2023-07-01
1777
글번호 170257
지표
답변완료
수식 문의드립니다
1번
이평선 5.10.20
macd 12.24.9
엔벨로프 15.15
크로스업(macd,0) 매수
20> 10> 5 일때 10% 상승시 매도(단, 10%수익 이후 macd >0 유지될때 직전매수가에서 -2%시 재매수, macd가 기준선을 이탈시 무효)
20> 5> 10 일때 20% 상승시 매도(단, 20%수익 이후 macd >0 유지될때 직전매수가에서 -2%시 재매수, macd가 기준선을 이탈시 무효)
5> 20> 10 일때 30% 상승시 매도(단, 30%수익 이후 하락하여 매도가보다 -15%시 재매수, macd가 기준선을 이탈시 무효)
5< 10< 20 일때 캔들이 엔벨로프 상단을 크로스업하고 상단에서 20%이상 상승하면 즉시매도
2번
이평선 5.10.20
macd1 12.24.9
macd2 10.20.7
엔벨로프 15.15
크로스업(macd1,0) 매수
20> 10> 5 일때 10%이상 상승시 크로스다운(macd2,0) 매도
20> 5> 10 일때 20%이상 상승시 크로스다운(macd2,0) 매도
5> 20> 10 일때 30%이상 상승시 크로스다운(macd2,0) 매도
단, 캔들이 엔벨로프 상단을 크로스업하고 상단에서 20%이상 상승하면 즉시매도
감사합니다.
2023-07-03
1549
글번호 170252
시스템
답변완료
식 부탁드립니다.
안녕하세요 추가로 식 문의드립니다.
아래식에서
손절을 한번하고(수량설정에 맞춰)
두번째 손절 할수있게 추가 부탁드립니다.
두번째에서는 남은 전량 손절(100%)
부탁드립니다
ㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡ
안녕하세요
예스스탁입니다.
input : 날짜(20230302),매수가격(1000),익절가격(1200),손절가격(800);
input : 매수량(2),익절수량(1),손절수량(1);
if NextBarSdate >= 날짜 Then
{
      if NextBarSdate != sDate Then
      {
            if MarketPosition == 0 and TotalTrades == 0 and NextBarOpen <= 매수가격 Then
                  Buy("b1",AtStop,매수가격,매수량);
      }
      Else
      {
            if MarketPosition == 0 and TotalTrades == 0 and DayHigh < 매수가격 Then
                  Buy("b",AtStop,매수가격,매수량);
      }
      
      
      if MarketPosition == 1 Then
      {
                  if Condition1 == False Then
                        ExitLong("bp",AtLimit,익절가격,"",익절수량,1);
                  if Condition2 == False Then
                        ExitLong("bl",AtStop,손절가격,"",손절수량,1);
      }
}
2023-06-30
1335
글번호 170240
시스템