답변완료
하이킨 아시 타주기
input : n(10);
var : D1(0),idx(0),TF(0),T(0),T1(0),tx(0);
var : oo(0),hh(0),ll(0),cc(0);
var : xopen(0),xhigh(0),xlow(0),xclose(0);
var : xopen1(0),xhigh1(0),xlow1(0),xclose1(0);
if Bdate != Bdate[1] or Index == 0 Then
{
D1 = sdate;
idx = 0;
}
Else
idx = idx+1;
if D1 > 0 Then
{
TF = idx%n;
if Bdate != Bdate[1] or (Bdate == Bdate[1] and TF < TF[1]) or Index == 0 Then
{
oo = o;
hh = h;
ll = l;
value1 = value1+1;
xopen1 = xopen;
xclose1 = xclose;
xhigh1 = xhigh;
xlow1 = xlow;
T1 = T[1];
}
if hh > 0 and h > hh Then
hh = h;
if ll > 0 and l < ll Then
ll = l;
cc = c;
if value1 == 1 then
{
xOpen = oo;
xClose = (oo+hh+ll+cc)/4;
xHigh = MaxList(hh, xOpen, xClose);
xLow = MinList(ll, xOpen,xClose);
}
if value1 > 1 then
{
xClose = (oo+hh+ll+cc)/4;
xOpen = (xOpen1 + xClose1)/2 ;
xHigh = MaxList(hh, xOpen, xClose) ;
xLow = MinList(ll, xOpen, xClose) ;
}
if XClose > Xopen Then
{
T = 1;
PlotPaintBar(h,l,"강조",Red);
}
else if XClose < Xopen Then
{
T = -1;
PlotPaintBar(h,l,"강조",Blue);
}
else
{
T = 0;
PlotPaintBar(h,l,"강조",GREEN);
}
if T != T[1] Then
{
if T == -1 Then
{
tx = Text_New(sDate,sTime,H+0.1,"■");
Text_SetColor(tx,Blue);
Text_SetStyle(tx,2,2);
}
if T == 1 and Xclose < DayHigh-0.9 Then
{
tx = Text_New(sDate,sTime,L-0.1,"■");
Text_SetColor(tx,Red);
Text_SetStyle(tx,2,2);
}
}
}
그림 위는 현 수식의 타주기 15틱 차트이고,아래는 150틱 차트의 일반 하이킨 아시입니다.
15틱 차트에서 아래 그림처럼 150틱 bar를 보고 싶습니다.
현 수식을 15틱 차트에서, 아래 그림같이 150틱 차트의 일반 하이킨 아시 차트와 같은 모양이 나타나게 변경 부탁 드립니다. (차트는 15틱, bar는 150틱)
2번 수식
input : MaPeriod(3),MaPeriod2(1);
var : maOpen(0),maClose(0),maLow(0),maHigh(0);
var : haOpen(0),haClose(0),haLow(0),haHigh(0);
var : ExtMapBuffer1(0),ExtMapBuffer2(0),ExtMapBuffer3(0),ExtMapBuffer4(0);
var : ExtMapBuffer5(0),ExtMapBuffer6(0),ExtMapBuffer7(0),ExtMapBuffer8(0);
var : r(0),g(0),b(0);
if Index == 0 Then
{
maOpen=Open;
maClose=Close;
maLow=Low;
maHigh=High;
}
Else
{
maOpen=(maOpen[1]*(MAperiod-1)+Open)/MAPeriod;
maClose=(maClose[1]*(MAperiod-1)+Close)/MAPeriod;
maLow=(maLow[1]*(MAperiod-1)+Low)/MAPeriod;
maHigh=(maHigh[1]*(MAperiod-1)+High)/MAPeriod;
haOpen=(ExtMapBuffer5[1]+ExtMapBuffer6[1])/2;
haClose=(maOpen+maHigh+maLow+maClose)/4;
haHigh=Max(maHigh, Max(haOpen, haClose));
haLow=Min(maLow, Min(haOpen, haClose));
if (haOpen<haClose) then
{
r=255;
g=10;
b=0;
ExtMapBuffer7=haLow;
ExtMapBuffer8=haHigh;
}
else
{
r=0;
g=191;
b=255;
ExtMapBuffer7=haHigh;
ExtMapBuffer8=haLow;
}
ExtMapBuffer5=haOpen;
ExtMapBuffer6=haClose;
ExtMapBuffer1=WMA(ExtMapBuffer7,MAperiod2);
ExtMapBuffer2=WMA(ExtMapBuffer8,MAperiod2);
ExtMapBuffer3=WMA(ExtMapBuffer5,MAperiod2);
ExtMapBuffer4=WMA(ExtMapBuffer6,MAperiod2);
}
PlotPaintBar(ExtMapBuffer2,ExtMapBuffer1,ExtMapBuffer3,ExtMapBuffer4,"강조",Rgb(r,g,b));
1번 수식과 같은 원리로,
a,상승시 네모, 하락 전환시 네모 표시.
b,타주기(6배):15틱 차트에서 90틱 bar를 보는 타주기. 감사합니다.
2023-05-16
1268
글번호 168980
강조
답변완료
지표 및 시스템 문의드립니다
수고많으십니다~~
번거롭게 해드렸네요...
간단하게 작성법을 알고, 응용하면 될줄알았는데 쉽지가않네요
다시한번 재문의 드립니다.
=================================
키움에서 쓰던
1. 시스템 매매를 예스트레이더에 맞게 변경하고 싶습니다.
2. 매수식을 이용한 검색 도 부탁드립니다
================================
1. 시스템 트레이딩
> 제목 : 매매식 및 매수매도 조건 설정 문의
조건설정
1차매수 : 2000주
2차매수 : 500주 ... 2차까지만 매수하고 싶습니다.
매도는
1차매도 : 평단대비 3.5% 상승시 비중의 30%만 매도 (최초 3.5%상승시 1번만 매도)
2차매도 : 평단대비 10% 상승시 비중의 50% 매도
나머지 전량매도 :
1. 매도조건 달성시
2. 평단대비 50% 달성시 (목표가)
3. 평단대비 -15% 하락시 손절
시간설정
1. 오전 09:10 부터 매수시작
2. 오후 02:30 부터는 신규매수 중지
3. 오후 03:15 보유종목 모두 청산
이렇게 하고 싶은데 어떻게 설정을 해야할까요??
(아래 매매식)
period = 10
multiple = 3
기본
base = (h + l) /2;
상단선
upper_band=base + atr(period)*multiple;
downtrend=valuewhen(1,lowest(upper_band(1),period)>upper_band,upper_band);
하단선
lower_band=base - atr(period)*multiple;
uptrend=valuewhen(1,highest(lower_band(1),period)<lower_band,lower_band);
매수
crossup( c(1), downtrend(1)) && c > downtrend
매도
crossdown( c(1), uptrend(1) ) && c < uptrend
========================================
3. 위 매수식을 이용한 "검색" 도 부탁드립니다
(아래조건에 해당하는 종목을 검색하고 싶은데 어떻게 하느지를 모르겠네요??)
period = 10
multiple = 3
기본
base = (h + l) /2;
상단선
upper_band=base + atr(period)*multiple;
downtrend=valuewhen(1,lowest(upper_band(1),period)>upper_band,upper_band);
하단선
lower_band=base - atr(period)*multiple;
uptrend=valuewhen(1,highest(lower_band(1),period)<lower_band,lower_band);
매수
crossup( c(1), downtrend(1) ) && c > downtrend
2023-05-15
1686
글번호 168975
지표
답변완료
수식확인 요청 드립니다.
nr12 nr7로 테스트 했는데
1봉전께 나오는거 같습니다.
번거로우시겠지만 확인 부탁드립니다. 감사합니다.
> 예스스탁 님이 쓴 글입니다.
> 제목 : Re : 지표 및 종목검색식 부탁드립니다.
>
안녕하세요
예스스탁입니다.
1. 지표(속성에서 막대그래프로 지정하고 보시기 바랍니다.)
input : length_NR(7);
var : sOpen(0),sHigh(0),sLow(0),sClose(0);
var : range_NR_Prep(0),range_NR(0),range_ATR(0);
var : range_isCurrentLowest(False),range_isLowest(False);
var : range_Break_Direction(0),range_Volume_Surge(0);
sOpen = open;
sHigh = high;
sLow = low;
sClose = close;
#NR_Check(range) => range < lowest(range, length_NR - 1)[1] ? true : false
// Calculations
range_NR_Prep = sHigh - sLow;
range_NR = sHigh[1] - sLow[1];
range_ATR = atr(length_NR);
if range_NR_Prep < lowest(range_NR_Prep,length_NR-1)[1] Then
range_isCurrentLowest = true;
Else
range_isCurrentLowest = False;
if range_NR < lowest(range_NR,length_NR-1)[1] Then
range_isLowest = true;
Else
range_isLowest = False;
range_Break_Direction = iff(range_isLowest == true , IFf(sClose > sHigh[1] and range_ATR > range_ATR[1] , 1 ,IFf(sClose < sLow[1] and range_ATR < range_ATR[1] , -1 , 0)),0);
range_Volume_Surge = iff(volume > ma(volume, length_NR)[1] , 1 , 0);
range_Break_Direction = iff(range_Break_Direction == 1 , range_Break_Direction + range_Volume_Surge ,IFf(range_Break_Direction == -1 , range_Break_Direction + range_Volume_Surge , 0));
if range_isLowest then
plot1(range_Break_Direction,"검색",green);
Else
NoPlot(1);
2 종목검색
input : length_NR(7);
var : sOpen(0),sHigh(0),sLow(0),sClose(0);
var : range_NR_Prep(0),range_NR(0),range_ATR(0);
var : range_isCurrentLowest(False),range_isLowest(False);
var : range_Break_Direction(0),range_Volume_Surge(0);
sOpen = open;
sHigh = high;
sLow = low;
sClose = close;
#NR_Check(range) => range < lowest(range, length_NR - 1)[1] ? true : false
// Calculations
range_NR_Prep = sHigh - sLow;
range_NR = sHigh[1] - sLow[1];
range_ATR = atr(length_NR);
if range_NR_Prep < lowest(range_NR_Prep,length_NR-1)[1] Then
range_isCurrentLowest = true;
Else
range_isCurrentLowest = False;
if range_NR < lowest(range_NR,length_NR-1)[1] Then
range_isLowest = true;
Else
range_isLowest = False;
range_Break_Direction = iff(range_isLowest == true , IFf(sClose > sHigh[1] and range_ATR > range_ATR[1] , 1 ,IFf(sClose < sLow[1] and range_ATR < range_ATR[1] , -1 , 0)),0);
range_Volume_Surge = iff(volume > ma(volume, length_NR)[1] , 1 , 0);
range_Break_Direction = iff(range_Break_Direction == 1 , range_Break_Direction + range_Volume_Surge ,IFf(range_Break_Direction == -1 , range_Break_Direction + range_Volume_Surge , 0));
if range_isLowest then
Find(1);
즐거운 하루되세요
> 신데렐라맨 님이 쓴 글입니다.
> 제목 : 지표 및 종목검색식 부탁드립니다.
> 종목검색식 + 지표요청입니다.
nr(x) 인디케이터라는 지표입니다.
기본은 12일이고 날짜지정이 가능하면 좋겠습니다.
제가 설명이 부족할듯 하여 원본 링크 첨부드립니다.
https://kr.tradingview.com/v/OWa0Thc7/
브레이크 업다운 같은건 없어도 되고요 nr(x) 종목 검색식과
지표 부탁드립니다.
미리 감사드려요. 꾸벅~
//@version=2
study("NR(X) Indicator", overlay = true)
// Pull traditional data
sOpen = security(tickerid, period, open)
sHigh = security(tickerid, period, high)
sLow = security(tickerid, period, low)
sClose = security(tickerid, period, close)
// Inputs
length_NR = input(defval = 7, title = "Period length of days for Narrow Range", type = integer)
NR_Check(range) =>
range < lowest(range, length_NR - 1)[1] ? true : false
// Calculations
range_NR_Prep = sHigh - sLow
range_NR = sHigh[1] - sLow[1]
range_ATR = atr(length_NR)
range_isCurrentLowest = NR_Check(range_NR_Prep)
range_isLowest = NR_Check(range_NR)
range_Break_Direction = range_isLowest == true ? sClose > sHigh[1] and range_ATR > range_ATR[1] ? 1 : sClose < sLow[1] and range_ATR < range_ATR[1] ? -1 : 0 : 0
range_Volume_Surge = volume > sma(volume, length_NR)[1] ? 1 : 0
range_Break_Direction := range_Break_Direction == 1 ? range_Break_Direction + range_Volume_Surge : range_Break_Direction == -1 ? range_Break_Direction + range_Volume_Surge : 0
// Draw out
//plot(range_isLowest == true ? range_Break_Direction : na, color = green, style = histogram, transp = 0)
plotshape(range_isCurrentLowest == true ? low : na, style = shape.diamond, color = white, transp = 0)
plotshape(range_Break_Direction > 0 ? low : na, style = shape.labeldown, color = green, transp = 0, text = "Break ₩nUP", textcolor = white, location = location.abovebar)
plotshape(range_Break_Direction < 0 ? high : na, style = shape.labelup, color = red, transp = 0, text = "Break ₩nDOWN", textcolor = white, location = location.belowbar)
2023-05-15
1552
글번호 168974
종목검색