커뮤니티
수식변경 부탁드립니다.
2018-11-26 18:02:04
219
글번호 123905
아래 수식은 분봉으로 매수타점을 잡으면서 일봉의 이평선을 참조하도록 되어 있습니다.
BuySetup = true가 되는 조건을 일봉의 이평선이 아니라 일봉의 볼린져밴드하단에 가까이 왔을때 true가 되는 조건으로 변경부탁드립니다.
즉 지금 일봉이평선+3% 이하로 떨어지면 true가 되도록 되어 있는데 이것을 일봉 볼린져밴드하단+3% 이내로 들어오면 true가 되도록 변경 부탁드립니다
input : 매수일(20171017),손절일(20180613),시작시간(090000),종료일(20181231),P(20),Period3(14),dv(2),sto1(25),sto2(6),sto3(6),매수MAP(5),청산MAP(20),N(21),
금액(5000000),목표수익(10000000),절반매도(1.10),스탑로스(10000000),TR스탑(10000),과매도값(90),과매수값(10),지정가손절(1),지정가목표(10000000);
input : nday(10),Per(3);
var : stok(0),stoD(0),RS(0),BuySetup(true),BuySetup2(true),ExitSetup1(false),Xcond(false),매수mav(0),청산mav(0),Dncnt(0);
var : sum(0),DayMa(0),cnt(0);
# 매수 이평선
매수mav = ma(C,매수MAP);
# 청산 이평선
청산mav = ma(C,청산MAP);
# RSI
RS = RSI(Period3);
# 스톡케스틱
stok = StochasticsK(sto1,sto2);
Stod = StochasticsD(sto1,sto2,sto3);
#일봉이평
sum = 0;
for cnt = 0 to nday-1
{
sum = sum + DayClose(cnt);
}
DayMa = sum/nday;
# 매수조건1
if TotalTrades > TotalTrades[1] Then
BuySetup = false;
if C <= DayMa*(1+Per/100) and
MarketPosition == 0 Then
BuySetup = true;
# if MarketPosition == 0 and RS < 35 and (sDate >= 셋업일) Then
# BuySetup = true;
# buysetup = true가 발생된 이후에 캔들이 5일 이평선을 통과매면 매수
if BuySetup == true and (매수mav > 청산mav) and (sDate >= 매수일) and (sDate <= 종료일) and MarketPosition == 0 Then
buy("매수",OnClose,def,Floor(금액/C));
답변 1
예스스탁 예스스탁 답변
2018-11-28 14:09:00
안녕하세요
예스스탁입니다.
input : 매수일(20171017),손절일(20180613),시작시간(090000),종료일(20181231),P(20),Period3(14),sto1(25),sto2(6),sto3(6),매수MAP(5),청산MAP(20),N(21),
금액(5000000),목표수익(10000000),절반매도(1.10),스탑로스(10000000),TR스탑(10000),과매도값(90),과매수값(10),지정가손절(1),지정가목표(10000000);
input : BBP(10),dv(2),Per(3);
var : stok(0),stoD(0),RS(0),BuySetup(true),BuySetup2(true),ExitSetup1(false),Xcond(false),매수mav(0),청산mav(0),Dncnt(0);
var : sum(0),mav(0),cnt(0),SumSqrt(0),Stdv(0),BBup(0),BBdn(0);
# 매수 이평선
매수mav = ma(C,매수MAP);
# 청산 이평선
청산mav = ma(C,청산MAP);
# RSI
RS = RSI(Period3);
# 스톡케스틱
stok = StochasticsK(sto1,sto2);
Stod = StochasticsD(sto1,sto2,sto3);
#일봉 볼밴 중단(이동평균) 계산
sum = 0;
for cnt = 0 to BBP-1
{
sum = sum + DayClose(cnt);
}
mav = sum/BBP;
#표준편차 계산
SumSqrt = 0;
For cnt = 0 To BBP - 1
{
SumSqrt = SumSqrt + (DayClose(cnt) - mav)^2;
}
Stdv = SquareRoot(SumSqrt / BBP);
# 일봉 볼린져밴드 계산
BBup = mav + (Dv * Stdv);
BBdn = mav - (Dv * Stdv);
# 매수조건1
if TotalTrades > TotalTrades[1] Then
BuySetup = false;
if C <= BBdn*(1+Per/100) and
MarketPosition == 0 Then
BuySetup = true;
# if MarketPosition == 0 and RS < 35 and (sDate >= 셋업일) Then
# BuySetup = true;
# buysetup = true가 발생된 이후에 캔들이 5일 이평선을 통과매면 매수
if BuySetup == true and (매수mav > 청산mav) and (sDate >= 매수일) and (sDate <= 종료일) and MarketPosition == 0 Then
buy("매수",OnClose,def,Floor(금액/C));
즐거운 하루되세요
> 뽄때 님이 쓴 글입니다.
> 제목 : 수식변경 부탁드립니다.
> 아래 수식은 분봉으로 매수타점을 잡으면서 일봉의 이평선을 참조하도록 되어 있습니다.
BuySetup = true가 되는 조건을 일봉의 이평선이 아니라 일봉의 볼린져밴드하단에 가까이 왔을때 true가 되는 조건으로 변경부탁드립니다.
즉 지금 일봉이평선+3% 이하로 떨어지면 true가 되도록 되어 있는데 이것을 일봉 볼린져밴드하단+3% 이내로 들어오면 true가 되도록 변경 부탁드립니다
input : 매수일(20171017),손절일(20180613),시작시간(090000),종료일(20181231),P(20),Period3(14),dv(2),sto1(25),sto2(6),sto3(6),매수MAP(5),청산MAP(20),N(21),
금액(5000000),목표수익(10000000),절반매도(1.10),스탑로스(10000000),TR스탑(10000),과매도값(90),과매수값(10),지정가손절(1),지정가목표(10000000);
input : nday(10),Per(3);
var : stok(0),stoD(0),RS(0),BuySetup(true),BuySetup2(true),ExitSetup1(false),Xcond(false),매수mav(0),청산mav(0),Dncnt(0);
var : sum(0),DayMa(0),cnt(0);
# 매수 이평선
매수mav = ma(C,매수MAP);
# 청산 이평선
청산mav = ma(C,청산MAP);
# RSI
RS = RSI(Period3);
# 스톡케스틱
stok = StochasticsK(sto1,sto2);
Stod = StochasticsD(sto1,sto2,sto3);
#일봉이평
sum = 0;
for cnt = 0 to nday-1
{
sum = sum + DayClose(cnt);
}
DayMa = sum/nday;
# 매수조건1
if TotalTrades > TotalTrades[1] Then
BuySetup = false;
if C <= DayMa*(1+Per/100) and
MarketPosition == 0 Then
BuySetup = true;
# if MarketPosition == 0 and RS < 35 and (sDate >= 셋업일) Then
# BuySetup = true;
# buysetup = true가 발생된 이후에 캔들이 5일 이평선을 통과매면 매수
if BuySetup == true and (매수mav > 청산mav) and (sDate >= 매수일) and (sDate <= 종료일) and MarketPosition == 0 Then
buy("매수",OnClose,def,Floor(금액/C));
다음글