커뮤니티

vwap검색식

프로필 이미지
스윙러
2026-01-31 11:48:21
64
글번호 230218
답변완료

재미나이의 도움을받아 vwap검색식을 만들어보았으나 반영이 제대로 되지않는것같아 문의드립니다



이건 일봉상 vwap아래에있는 조건식


Input : Period(250);

Var : TargetIndex(0), count(0), sumPV(0), sumV(0), AutoAVWAP(0), vM(0), HighVol(0);


// 1. 기간 내 최고 거래량 값 찾기

HighVol = Highest(V, Period);


// 2. 최고 거래량이 발생한 위치(현재로부터 몇 봉 전인지) 찾기

TargetIndex = -1;

for count = 0 to Period - 1

{

if TargetIndex == -1 and V[count] == HighVol Then

TargetIndex = count;

}


// 3. 기준봉을 찾았고 데이터가 충분할 때만 계산

if TargetIndex >= 0 and Index >= Period Then

{

sumPV = 0;

sumV = 0;


// 4. 앵커(기준봉)부터 현재까지의 누적 VWAP 계산

for count = 0 to TargetIndex

{

vM = (H[count] + L[count] + C[count]) / 3;

sumPV = sumPV + vM * V[count];

sumV = sumV + V[count];

}


if sumV > 0 Then

{

AutoAVWAP = sumPV / sumV;


// 5. 조건 설정: 주가가 검은선(AutoAVWAP)보다 아래에 있는 종목만 검색

if C < AutoAVWAP Then

Find(1);

}

}


이건 주가가 vwap밴드 보다 위에있는 조건식


Input : Period(250), D2(2);

Var : TargetIndex(0), count(0), sumPV(0), sumV(0), AutoAVWAP(0);

Var : sumVar(0), StdDev(0), LowerBand(0), vM(0); // M을 vM으로 변경


// 1. 데이터 확보 및 최고 거래량 지점 찾기

if Index >= Period Then

{

TargetIndex = MRO(V == Highest(V, Period), Period, 1);

sumPV = 0;

sumV = 0;


// 2. 앵커 시점부터의 VWAP(평균가격) 계산

for count = 0 to TargetIndex

{

vM = (H[count] + L[count] + C[count]) / 3;

sumPV = sumPV + vM * V[count];

sumV = sumV + V[count];

}


if sumV > 0 Then

{

AutoAVWAP = sumPV / sumV;


// 3. 표준편차 계산을 위한 편차 제곱합 계산

sumVar = 0;

for count = 0 to TargetIndex

{

vM = (H[count] + L[count] + C[count]) / 3;

sumVar = sumVar + V[count] * Pow(vM - AutoAVWAP, 2);

}

// 4. 하단 밴드 산출 (표준편차 적용)

StdDev = SQRT(sumVar / sumV);

LowerBand = AutoAVWAP - (D2 * StdDev);


// 5. 조건: 주가가 하단 밴드보다 위에 있는 종목 검색

if C > LowerBand Then

Find(1);

}

}


이렇게 적용시켜보았으나 vwap보다 높은위치에 있는 종목이 걸러질때가 있던데 어떻게 수정하면 좋을지 문의드립니다




















종목검색
답변 1
프로필 이미지

예스스탁 예스스탁 답변

2026-02-02 09:25:51

안녕하세요 예스스탁입니다. vwap는 일반적으로 분봉이하 주기에서 사용하는 지표이고 일봉이상은 봉의 중심(고저종의 중간값)입니다. 올리신 수식은 최근 250개봉 최고가부터 값을 누적해서 평균하는 내용인데 해당 내용이 의도하신 내용이 맞다면 수식은 맞게 작성이 되었습니다.

어떤 부분이 의도와 다르신지 정확히 알수 없습니다.
02-3453-1060으로 전화주시기 바랍니다. 즐거운 하루되세요