답변완료
부탁드립니다.
변형 부탁 드립니다
// normalize values into the range -1 to +1
normalize(value, minValue, maxValue) =>
range = maxValue - minValue == 0 ? 0.0001 : maxValue - minValue
-1 + (((value - minValue) / range) * 2)
atrValue = atr(9)
priceRange = 2 * atrValue
// RSI
rsiValue = rsi(close, 14)
rsiValueNormalized = normalize(rsiValue, 25, 75)
rsiColor = rsiValueNormalized <= 0 ? orange : yellow
// Elliot Wave
emaDiff = ema(close, 5) - ema(close, 35)
emaDiffNormalized = normalize(emaDiff, -priceRange, priceRange)
emaColor = emaDiff <= 0 ? red : lime
// MACD
fastMovingAverage = ema(close, 12)
slowMovingAverage = ema(close, 26)
macd = fastMovingAverage - slowMovingAverage
macdSignal = sma(macd, 9)
macdHistogram = macd - macdSignal
macdNormalized = normalize(macd, -priceRange, priceRange)
macdSignalNormalized = normalize(macdSignal, -priceRange, priceRange)
macdHistogramNormalized = normalize(macdHistogram, -priceRange, priceRange)
isMACDAbove = macd >= macdSignal
crossoverColor = isMACDAbove ? lime : red
crossoverValue = cross(macd, macdSignal) ? macdSignalNormalized : na
// MFI
positiveFlow = sum(volume * (change(hlc3) <= 0 ? 0 : hlc3), 14)
negativeFlow = sum(volume * (change(hlc3) >= 0 ? 0 : hlc3), 14)
mfiValue = rsi(positiveFlow, negativeFlow)
mfiValueNormalized = normalize(mfiValue, 25, 75)
// Composite
compositeValue = emaDiffNormalized + rsiValueNormalized + macdHistogramNormalized + mfiValueNormalized
compositeNormalized = normalize(compositeValue, -4, 4)
compositeColor = compositeValue <= 0 ? red : lime
compositeStyle = histogram
// Plots
plot(compositeNormalized, title="Composite", color=compositeColor, style=area, linewidth=2, transp=60)
plot(macdSignalNormalized, title="MacD Signal", style=line, linewidth=1, color=crossoverColor)
plot(crossoverValue, title="Crossover", style=circles, linewidth=3, color=crossoverColor)
2023-07-12
1111
글번호 170556
지표
답변완료
부탁드립니다
보조차트 종목의 당일 시가, 고가, 저가, 종가가 그 전날의 시가, 고가, 저가, 종가와 각각 비교하여 다 높으면 매수하고, 그 반대면 매도하라를 기본차트에 구현해 주세요
고맙습니다.
2023-07-12
916
글번호 170537
시스템
답변완료
문의드립니다.
시가에서 40틱 이상 올라가면 1개 매도, 70틱 이상 올라가면 1개 추가 매도, 100틱 이상 올라가면 1개 추가 매도하는 3계약 역매매 매매시스템이 있습니다. (매수는 반대로 마찬가지 입니다)
1~3개 매도진입후 시가 근처까지 내려오면 1~3 계약을 동시 청산하고자 합니다.
(매수는 반대로 마찬가지 입니다)
구체적으로 설명하자면
1번째 계약이 체결되고 시가 위 5틱 이하까지 내려오면 청산,
2번째 계약이 체결되고 나서 시가 위 10틱 이하까지 내려오면 전량 청산,
3번째 계약이 체결되고 나서 시가 위 20틱 이하까지만 내려오면 전량 청산입니다.
(딱 시가 위 5, 10, 20틱에서 청산되도 좋고, 그 이하에서 캔들의 종가가 만들어지면 청산되도 좋습니다. 어떤 것이 더 효율적일지 비교해보고 싶습니다)
손절은 250틱인데 이 손절은 3계약 진입분 손절을 모두 합산한 누적 손절입니다.
(이전 진입의 익절과 손절분과는 별개입니다)
마지막으로 손절은 해당 진입분의 합이 250틱이 되야 나오는데 이렇게 손절되면 거래시간에 관계없이 당일 매매는 종료하고 신호가 더이상 나오지 않게 하고 싶습니다.
거래시간은 9시부터 22시까지입니다.
미리 노고에 감사드립니다.
장마가 곧 온다는데 늘 건강하시길 바랍니다~
2023-07-12
1046
글번호 170533
시스템
답변완료
문의드립니다.
안녕하세요
아래 수식에서 마지막 rt 부분을 iff 함수를 사용하지 않고
그냥 if만 사용해서 풀어서 작성하면 어떻게 되는지 궁금합니다.
감사합니다.
input : Length(22),Multiplier(2);
var : atrv(0),avgtr(0);
var : highestC(0),lowestC(0),hiLimit(0),lolimit(0);
var : rt(0),ps(0);
ATrv = atr(1);
avgTR = wma(atrv, Length);
highestC = highest(H,Length);
lowestC = lowest(L,Length);
hiLimit = highestC[1] - avgTR[1] * Multiplier;
loLimit = lowestC[1] + avgTR[1] * Multiplier;
rt = 0.0;
rt = IFf(close > hiLimit and close > loLimit , hiLimit ,
iff(close < loLimit and close < hiLimit , loLimit ,
iff(IsNaN(rt[1]) == False, rt[1], close)));
plot1(rt);
2023-07-12
1201
글번호 170532
지표
답변완료
시스템 작성의뢰
수고 하십니디 !
1.거래량 5 이평선이 30 이상 상승하면 신호로 알려주고 on balance price 지표가 - 86 이하로 내려가고 obv 지표가 -
1800 이하로 하락하고 pvi지표가 99.40 이하로 하락하고 er bear power 지표가 - 0.08 이하로 하락 하고120,240,480,960 ,1920 , 3840 이동평균선이 역배열이 되고 1920
이평선과 3840 이평선의 간격이 15틱이상 벌어지고 120 이평선이 240 이평선을 업크로스할
때 매수를 하고 50 틱이상 상승한 다음 120
이평선이 240 이평선을 다운크로스 할때 청산을 한다
2.거래량 5 이평선이 30 이상 상승하면 신호로 알려주고 on balance price 지표가 180 이상 상승하고 obv 지표가 2800
이상 상승 하고 pvi지표가 101.30 이상 상승 하고 er bear power 지표가 0.00 이상 상승 하고
120,240,480,960 ,1920 , 3840 이동평균선이 정배열이 되고 1920 이평선과 3840 이평선의 간격이 16 틱이상 벌어지고
120 이평선이 240 이평선을 다운크로스할때 매도를 하고 50 틱이상 하락한 다음 120 이평선이 240 이평선을 업크로스 할때 청산을 한다
2023-07-12
1423
글번호 170531
시스템