예스스탁
예스스탁 답변
2025-02-04 15:55:20
안녕하세요
예스스탁입니다.
올려주신 내용은 변경해 드리기 어렵습니다.
도움을 드리지 못해 죄송합니다.
즐거운 하루되세요
> 오늘도수익 님이 쓴 글입니다.
> 제목 : 수식 부탁드립니다.
>
INPUT : 비차익비중(10), 외인선물비중(20), 외인코스피비중(15);
INPUT : 개인옵션비중(15), 호가잔량비중(40), 미결가중치부여1(1);
INPUT : 원웨이점수(50);
var : 비차익_배점계수(0), 외인선물_배점계수(0), 외인코피_배점계수(0);
var : 개인옵션_배점계수(0), 호가잔량_배점계수(0);
var : 비차익(0), 외인선물(0), 외인코피(0), 개인옵션(0), 호가잔량(0);
var : 미결증감(0), 미결가중치(0);
비차익 = data2(C);
외인선물 = data3(C);
외인코피 = data4(C);
개인옵션 = data5(C);
호가잔량 = (bids-asks);
미결증감 = dayoi-dayOi(1);
비차익_배점계수 = 150000 / 비차익비중; // 억단위로 환산
외인선물_배점계수 = 4000 / 외인선물비중;
외인코피_배점계수 = 2500 / 외인코스피비중;
개인옵션_배점계수 = 40 / 개인옵션비중;
호가잔량_배점계수 = 8000 / 호가잔량비중;
//--미결은 전체 비중에 포함하지 않고 가중치만 부여
If 미결증감 > 0 and 미결가중치부여1 == 1 then
미결가중치 = 1 + ((미결증감 / 400) / 100); // 8000개일 경우 20%
else 미결가중치 = 1;
//*******************************
//--------점수 계산
var : 비차익점수(0), 외인선물점수(0), 외인코피점수(0);
var : 개인옵션점수(0), 호가잔량점수(0), 점수(0);
비차익점수 = 비차익 / 비차익_배점계수;
외인선물점수 = 외인선물 / 외인선물_배점계수;
외인코피점수 = 외인코피 / 외인코피_배점계수;
개인옵션점수 = - 개인옵션 / 개인옵션_배점계수;
호가잔량점수 = 호가잔량 / 호가잔량_배점계수;
//*******************점수의 상하한 제한*******************
//장의 방향을 판단하거나 원웨이 여부를 판단할때
//5개 항목이 골고루 동일 방향일때
//신뢰도가 높다고 할수 있는데
//특정 항목이 예외저으로 과다하게 금등락할 경우
//그 항목 때문에 지표가 왜곡될 수 있다.
//그래서 각항목 점수의 상하한을 제한하는 것이지만
//필요할 경우 여기의 전부 또는 일부항목을 지우거나
//주석처리 할수 있다
//예를들면 호가잔량 만을 중시한다면
//호가잔량만 남기고 나머지 항목은 삭제 또는 주석처리
//input 문으로 전체를 선택 또는 전체를 제외할 수도 있다.
input : 점수상하한제한이면1(0);
if 점수상하한제한이면1 == 1 then {
if 비차익점수 > 비차익비중 then 비차익점수 = 비차익비중;
if 비차익점수 < - 비차익비중 then 비차익점수 = - 비차익비중;
if 외인선물점수 > 외인선물비중 then 외인선물점수 = 외인선물비중;
if 외인선물점수 < - 외인선물비중 then 외인선물점수 = - 외인선물비중;
if 외인코피점수 > 외인코스피비중 then 외인코피점수 = 외인코스피비중;
if 외인코피점수 < - 외인코스피비중 then 외인코피점수 = - 외인코스피비중;
if 개인옵션점수 > 개인옵션비중 then 개인옵션점수 = 개인옵션비중;
if 개인옵션점수 < - 개인옵션비중 then 개인옵션점수 = - 개인옵션비중;
if 호가잔량점수 > 호가잔량비중 then 호가잔량점수 = 호가잔량비중;
if 호가잔량점수 < - 호가잔량비중 then 호가잔량점수 = - 호가잔량비중;
}
//*************************************************
점수 = (비차익점수 + 외인선물점수 + 외인코피점수 +
개인옵션점수 + 호가잔량점수) * 미결가중치;
//**************점수 막대색*************************
var : 점수색(0), 주황색(0), 연주황(0), 연하늘(0), 진하늘(0);
주황색 = RGB(255, 189, 189);
연주황 = RGB(255, 189, 189);
연하늘 = RGB(189, 202, 255);
진하늘 = RGB(189, 202, 255);
//주황색 = RGB(255, 120, 0);
//연주황 = RGB(255, 194, 134);
//연하늘 = RGB(0, 255, 255);
//진하늘 = RGB(0, 176, 176);
if 점수 > 0 AND 점수 [1] < 점수[0] Then 점수색 = 주황색;
if 점수 > 0 AND 점수 [1] > 점수[0] Then 점수색 = 연주황;
if 점수 < 0 AND 점수 [1] < 점수[0] Then 점수색 = 연하늘;
if 점수 < 0 AND 점수 [1] > 점수[0] Then 점수색 = 진하늘;
//**************************************************
//***************이평선****************************
//이평선도 색이나 굵기를 지정할 수 있음
//강도가 변형으로 점차 굵어지거나
//색이 점점 진하게 할수 있지만
//이평선은 지표의 속성에서 수정하는 것을 권장함
//지표내에서 색과 굵기를 지정하게 되면
//지표의 속성에서는 수정이 아니됨
input : 소이평봉수(5), 중이평봉수(20),대이평봉수(60);
var : 소이평값(0), 중이평값(0), 대이평값(0);
var : 소이평(0), 중이평(0), 대이평(0);
if dayindex+1 < 소이평봉수 then 소이평값 = dayindex+1;
if dayindex+1 < 중이평봉수 then 중이평값 = dayindex+1;
if dayindex+1 < 대이평봉수 then 대이평값 = dayindex+1;
대이평 = ma(점수, 대이평값);
중이평 = ma(점수, 중이평값);
소이평 = ma(점수, 소이평값);
//*************************************************
var : c1(0),c2(0),c3(0);
if 소이평 > 소이평[1] Then
c1 = 주황색;
if 소이평 < 소이평[1] Then
c1 = 진하늘;
if 중이평 > 중이평[1] Then
c2 = 주황색;
if 중이평 < 중이평[1] Then
c2 = 진하늘;
if 대이평 > 대이평[1] Then
c3 = 주황색;
if 대이평 < 대이평[1] Then
c3 = 진하늘;
input : 당일분만출력이면1(1), 횡보장표시폭(70);
//===========가두리(횡보)장 라인
Plot11(0, "가두리", RGB(255,255,172), def, 횡보장표시폭); //노란색 일자 그래프
//if 당일분만출력이면1 == 1 then {
// if CurrentDate == sdate then {
// Plot12(점수, "점수막대", c1);
// if 점수 >= 원웨이점수 then Plot21( 원웨이점수, "상방원웨이선");
// if 점수 <= -원웨이점수 then Plot22(-원웨이점수, "하방원웨이선");
// plot41(소이평, "소이평");
// plot42(중이평, "중이평");
// plot43(대이평, "대이평");
// }
//}
//else {
Plot12(점수, "점수막대", c1);
if 점수 >= 원웨이점수 then Plot21( 원웨이점수, "상방원웨이선");
if 점수 <= -원웨이점수 then Plot22(-원웨이점수, "하방원웨이선");
plot41(소이평, "소이평",c1);
plot42(중이평, "중이평",c2);
plot43(대이평, "대이평",c3);
// }
Plot51(0,"0선");
/*
//--- 아래는 검증용
Plot81(비차익점수, "비차익점수");
Plot82(외인선물점수, "외인선물점수");
Plot83(외인코피점수, "외인코피점수");
Plot84(개인옵션점수, "개인옵션점수");
Plot85(호가잔량점수, "호가잔량점수");
Plot86(미결가중치, "미결가중치");
Plot87(점수, "점수");
/*
//★원웨이 예고 신호
var : 비차익(0), 외인선물(0), 외인코피(0), 개인옵션(0), 호가잔량(0);
비차익 = data2(C);
외인선물 = data3(C);
외인코피 = data4(C);
개인옵션 = data5(C);
호가잔량 = (bids-asks);
//--------점수 계산
var : 비차익점수(0), 외인선물점수(0), 외인코피점수(0);
var : 개인옵션점수(0), 호가잔량점수(0), 점수(0);
비차익점수 = 비차익 / 15000; // 백만원 단위를 억으로 환산
외인선물점수 = 외인선물 / 133;
외인코피점수 = 외인코피 / 166;
개인옵션점수 = - 개인옵션 / 2.7;
호가잔량점수 = 호가잔량 / 266;
점수 = 비차익점수 + 외인선물점수 + 외인코피점수 +
개인옵션점수 + 호가잔량점수;
//---지표의 출력
Plot1(점수, "점수막대");
if 점수 >= 45 then Plot21( 45, "점수상단");
if 점수 <= -45 then Plot22(-45, "점수하단");
위 수식을 5분봉에 적용하는데 90틱에서 적용했을때도 5분봉과 같은 챠트가 나오게 수정 부탁 드립니다.