커뮤니티
문의드립니다.
2018-08-01 12:50:06
136
글번호 121053
도움주시는 덕분에 도전하고 있습니다. 매번 감사합니다.
1. 시스템
분봉용
-국선,해선 공통
-전일까지 마감한 일봉 3개봉(3일전,2일전,하루전)가운데 양봉갯수,음봉갯수 계산
-둘 중에 양봉이 많을 경우 -> 당일 시가 즉시 매수, 종가 청산
-둘 중에 음봉이 많을 경우 -> 당일 시가 즉시 매도, 종가 청산
2. 시스템
분봉용
-국선,해선 공통
-00시00분 기준 일봉 3개봉(2일전,1일전, 오늘*) 가운데 양봉갯수,음봉갯수 계산
*설정 시간 기준으로 양봉인지 음봉인지 판단
-둘 중에 양봉이 많을 경우 -> 종가매수, 다음날 시가 청산
-둘 중에 음봉이 많을 경우 -> 종가매도, 다음날 시가 청산
3. 시스템
2번을 다음날 종가 청산으로
4. 지표
-틱에서 일봉 볼린저밴드
답변 1
예스스탁 예스스탁 답변
2018-08-01 15:33:56
안녕하세요
예스스탁입니다.
1
국선은 차트가 정규장 차트이면 시초가 진입이 가능합니다.
input : 청산시간(152500);
var : cnt(0);
var1 = 0;
var2 = 0;
for cnt = 0 to 2
{
if DayClose(cnt) > dayopen(cnt) Then
var1 = var1+1;
if DayClose(cnt) < dayopen(cnt) Then
var2 = var2+1;
}
if NextBarSdate > bdate Then
{
if var1 > var2 Then
buy("b",AtMarket);
if var1 < var2 Then
sell("s",AtMarket);
}
if (sdate != sdate[1] and stime >= 청산시간) or
(sdate == sdate[1] and stime >= 청산시간 and stime[1] < 청산시간) Then
{
if MarketPosition == 1 Then
ExitLong("bx");
if MarketPosition == -1 Then
ExitShort("sx");
}
해선이거나 국선복합차트이면 영엽일 변경 첫봉에 신호가 발생하게 해야 합니다.
input : 청산시간(050000);
var : cnt(0);
var1 = 0;
var2 = 0;
for cnt = 1 to 3
{
if DayClose(cnt) > dayopen(cnt) Then
var1 = var1+1;
if DayClose(cnt) < dayopen(cnt) Then
var2 = var2+1;
}
if bdate != bdate[1] Then
{
if var1 > var2 Then
buy("b");
if var1 < var2 Then
sell("s");
}
if (sdate != sdate[1] and stime >= 청산시간) or
(sdate == sdate[1] and stime >= 청산시간 and stime[1] < 청산시간) Then
{
if MarketPosition == 1 Then
ExitLong("bx");
if MarketPosition == -1 Then
ExitShort("sx");
}
2
종가매수는 가능하지 않으므로 시간지정하게 작성해 드립니다.
청산은 영업일 변경 첫봉을 기준으로 지정했습니다.
input : 진입시간(050000);
var : cnt(0);
var1 = 0;
var2 = 0;
for cnt = 1 to 3
{
if CloseD(cnt) > openD(cnt) Then
var1 = var1+1;
if CloseD(cnt) < openD(cnt) Then
var2 = var2+1;
}
if (sdate != sdate[1] and stime >= 진입시간) or
(sdate == sdate[1] and stime >= 진입시간 and stime[1] < 진입시간) Then
{
if var1 > var2 Then
buy("b");
if var1 < var2 Then
sell("s");
}
if bdate != bdate[1] Then
{
if MarketPosition == 1 Then
ExitLong("bx");
if MarketPosition == -1 Then
ExitShort("sx");
}
3
진입과 청산의 시간이 같으면 진입이 발생하지 않습니다.
진입매수로 지정한 봉보다는 최소한 한봉전 시간으로 지정해야 합니다.
input : 진입시간(050000),청산시간(045900);
var : cnt(0);
var1 = 0;
var2 = 0;
for cnt = 1 to 3
{
if CloseD(cnt) > openD(cnt) Then
var1 = var1+1;
if CloseD(cnt) < openD(cnt) Then
var2 = var2+1;
}
if (sdate != sdate[1] and stime >= 진입시간) or
(sdate == sdate[1] and stime >= 진입시간 and stime[1] < 진입시간) Then
{
if var1 > var2 Then
buy("b");
if var1 < var2 Then
sell("s");
}
if (sdate != sdate[1] and stime >= 청산시간) or
(sdate == sdate[1] and stime >= 청산시간 and stime[1] < 청산시간) Then
{
if MarketPosition == 1 Then
ExitLong("bx");
if MarketPosition == -1 Then
ExitShort("sx");
}
4
input : Period(20),Dv(2);
var : sum(0),cnt(0),mav(0),SumSqrt(0),Stdv(0);
var : BBup(0),BBdn(0),Counter(0);
If DayClose(Period) > 0 Then {
#일봉 이동평균 계산
sum = 0;
for cnt = 0 to Period-1{
sum = sum + DayClose(cnt);
}
mav = sum/Period;
#표준편차 계산
SumSqrt = 0;
For Counter = 0 To Period - 1 {
SumSqrt = SumSqrt + (DayClose(Counter) - mav)^2;
}
Stdv = SquareRoot(SumSqrt / Period);
# 일봉 볼린져밴드 계산
BBup = mav + (Dv * Stdv);
BBdn = mav - (Dv * Stdv);
plot1(BBup ,"상단");
plot2(mav,"중단");
plot3(BBdn,"하단");
}
즐거운 하루되세요
> 잡다백수 님이 쓴 글입니다.
> 제목 : 문의드립니다.
> 도움주시는 덕분에 도전하고 있습니다. 매번 감사합니다.
1. 시스템
분봉용
-국선,해선 공통
-전일까지 마감한 일봉 3개봉(3일전,2일전,하루전)가운데 양봉갯수,음봉갯수 계산
-둘 중에 양봉이 많을 경우 -> 당일 시가 즉시 매수, 종가 청산
-둘 중에 음봉이 많을 경우 -> 당일 시가 즉시 매도, 종가 청산
2. 시스템
분봉용
-국선,해선 공통
-00시00분 기준 일봉 3개봉(2일전,1일전, 오늘*) 가운데 양봉갯수,음봉갯수 계산
*설정 시간 기준으로 양봉인지 음봉인지 판단
-둘 중에 양봉이 많을 경우 -> 종가매수, 다음날 시가 청산
-둘 중에 음봉이 많을 경우 -> 종가매도, 다음날 시가 청산
3. 시스템
2번을 다음날 종가 청산으로
4. 지표
-틱에서 일봉 볼린저밴드
다음글
이전글