안녕하세요?
아래 전략에 대해 스크립트 작성 부탁드립니다.
국내선물 일봉으로 포지션 거래를 하고자합니다.
투자심리선 + 신심리도 < 0 이되 투자심리선이 20 이하이고 신심리선이 -50 이하이면 완성 익봉 시가에 매수 진입
투자심리선 + 신심리도 > 100 이되 투자심리선이 80 이상이고 신심리선이 50 이상이면 완성 익봉 시가에 매도 진입
투자심리선이 20 이하거나 신심리도가 -50 이하가 되면 익봉 시가에 매도청산
투자심리선이 80 이상이거나 신심리도가 50 이상이 되면 익봉 시가에 매수청산
*투자심리선 계산식
투자신리선 = M기간 주가 상승일수/ M * 100
**신심리도 계산식
Uptick = (N기간 상승일수의 합 * 상승폭의 합) / (상승폭 + 하락폭) *100
Dntick = (N기간 하락일수의 합 * 하락폭의 합) / (상승폭 + 하락폭) *100
신심리도 = {(Uptick-Dntick)/ N + 100} / 2
답변 1
예스스탁
예스스탁 답변
2024-03-08 10:05:10
안녕하세요
예스스탁입니다.
Input : Period(10),N(10);
var : Sim(0);
var : priceLen1(0),Upsize(0),Upday(0);
var : priceLen2(0),Downsize(0),Downday(0);
var : newsim(0);
var : sum(0);
Sim = Simrido(Period);
priceLen1 = iff(C > C[1], C-C[1], 0);
Upsize = AccumN(priceLen1,n);
Upday = AccumN(iff(priceLen1 > 0, 1, 0), n);
priceLen2 = iff(C < C[1], C[1]-C, 0);
Downsize = AccumN(priceLen2,n);
Downday = AccumN(iff(priceLen2 > 0, 1, 0), n);
newsim = (Upday*Upsize/(Upsize+Downsize) - Downday*Downsize/(Upsize+Downsize))*100/n;
sum = Sim+NewSim;
if MarketPosition <= 0 and sum < 0 and Sim < 20 and NewSim < -50 Then
Buy("b",AtMarket);
if MarketPosition >= 0 and sum > 100 and Sim > 80 and NewSim > 50 Then
Sell("s",AtMarket);
if MarketPosition == 1 and (Sim > 80 or NewSim > 50) Then
ExitLong("bx",AtMarket);
if MarketPosition == -1 and (Sim < 20 or NewSim < -50) Then
ExitShort("sx",AtMarket);
즐거운 하루되세요
> 흰둥이아빠 님이 쓴 글입니다.
> 제목 : 함수요청
> 안녕하세요?
아래 전략에 대해 스크립트 작성 부탁드립니다.
국내선물 일봉으로 포지션 거래를 하고자합니다.
투자심리선 + 신심리도 < 0 이되 투자심리선이 20 이하이고 신심리선이 -50 이하이면 완성 익봉 시가에 매수 진입
투자심리선 + 신심리도 > 100 이되 투자심리선이 80 이상이고 신심리선이 50 이상이면 완성 익봉 시가에 매도 진입
투자심리선이 20 이하거나 신심리도가 -50 이하가 되면 익봉 시가에 매도청산
투자심리선이 80 이상이거나 신심리도가 50 이상이 되면 익봉 시가에 매수청산
*투자심리선 계산식
투자신리선 = M기간 주가 상승일수/ M * 100
**신심리도 계산식
Uptick = (N기간 상승일수의 합 * 상승폭의 합) / (상승폭 + 하락폭) *100
Dntick = (N기간 하락일수의 합 * 하락폭의 합) / (상승폭 + 하락폭) *100
신심리도 = {(Uptick-Dntick)/ N + 100} / 2