커뮤니티
시스템식 부탁드립니다.
2015-10-21 11:13:13
158
글번호 91523
안녕하세요.. 항상 좋은 답변 감사드립니다.
다음과 같은 시스템식 부탁드립니다.
1. 일반사항
1) 일봉상 엔벨로프 지표를 기준으로 3분봉에서 매매하려고 합니다.
2) 3분할매수 2분할 매도
3) 외부변수는 다음과 같습니다.
2. 매수기준 - 그림1)참조
1) 일봉상 엔벨로프의 하단선에서 1차매수
"매수위치1차":"매수위치1차" 즉, 외부변수가 10인경우
엔벨로프 10:10 의 하단선에서 1차매수이나
여기에 "매수위치보정" 변수인 (1)% 위에서 1차매수
정리하면 일봉상 10:10 엔벨로프 하단선 가격의 1% 위에서 1차매수
2) 1차매수한날 엔벨로프 하단선가격에서 "매수위치2차" 즉 7% 하락시 2차매수
3) 1차매수한날 엔벨로프 하단선가격에서 "매수위치3차' 즉 14% 하락시 3차매수
4) 각분할매수 타점에서 전략총매수금액의 매수비중 %만큼 매수
5) 아래 외부변수와 같이 시작일자, 시작시간, 진입횟수도 부탁드립니다.
6) 각각의 매수타점에서 매수가 발생시 "1차매수", "2차매수", "3차매수"를 차트에 표시
3. 매도기준
1) 각타점에서 매수후 저점에서 "매도위치"변수 만큼 반등시 각각 매도
"매도위치1차(7)"인 경우 매수후 저점에서 7% 이상 반등시 매도비중만큼 1차매도
2) 각분할매도 타점에서 총매수금액의 매도비중 %만큼 매도
3) 각각의 매도타점에서 매도가 발생시 "1차매도", "2차매도"를 차트에 표시
4. 손절기준
1) 각각의 매수위치에서 매수후 타점보유일수 만큼 경과하면 해당보유일수 동안의 저점이탈시 손절
예: 1차매수시 "타점보유일수(3)" 인 경우 1차매수후 매수일 포함 3일동안 해당수익이 발생하지 못해
1차매도가 이루어지지 않았을 경우 3일동안의 최저점을 이탈시 손절
또한 같은 경우로 1차매수+2차매수가 되었을때 최종2차매수후 3일동안 1차매도가 이루어지지 않를
경우 최종 2차매수후 3일동안의 최저점을 이탈시 손절
1차매수+2차매수+3차매수가 되었을때 최종3차매수후 3일동안 1차매도도 이루어 지지않았을 경우
최종 3차매수후 3일동안으 최저점을 이탈시 손절
2) 각각의 매수후 1차매도만 이루어 지고 하락시 매수당시의 최저점 이탈하면 익절
예: 1차매수 --> 1차매도 --> 하락시 : 1차매수당시 최저점 이탈히면 익절
1차매수+2차매수 --> 1차매도 --> 하락시 : 2차매수당시 최저점 이탈하면 익절
1차매수+2차매수+3차매수 --> 1차매도 --> 하락시 : 3차매수당시 최저점 이탈하면 익절
3) 1)번항목의 손절처리가 된경우 "손절" 2)번항목의 익절처리가 된경우 "익절"로 차트에 표시
5. 일봉상 엔벨로프위치를 3분봉에 사용하도록 지표식도 부탁드립니다.
1) 매수위치1차, 매수위치2차, 매수위치3차의 지표
2) 외부변수 사용가능하도록 변수 부탁드립니다.
-------------------------------------------------------------------------------------------
input : 전략식시작일자(20151007), 전략식시작시간(090000), 전략총매수금액(2000);
input : 매수위치1차(10), 매수위치2차(7), 매수위치3차(14);
input : 매수위치보정(1)
input : 매도위치1차(7), 매도위치2차(14);
input : 매수비중1차(20), 매수비중2차(30), 매수비중3차(50);
input : 매도비중1차(50), 매도비중2차(50);
input : 전략식진입횟수(1);
input : 타점보유일수(3);
- 1. 매수예치차트-3분봉.PNG (0.01 MB)
답변 1
예스스탁 예스스탁 답변
2015-10-21 14:29:33
안녕하세요
예스스탁입니다.
1.
익절내용중 1차매수당시 최저점 등
매수당시 최저점이 어떤 값인지 정확치 않아
매수당시 그날의 최저가로 지정했습니다.
input : 전략식시작일자(20151007), 전략식시작시간(090000), 전략총매수금액(20000000);
input : P(10),매수위치1차(10), 매수위치2차(7), 매수위치3차(14);
input : 매수위치보정(1);
input : 매도위치1차(7), 매도위치2차(14);
input : 매수비중1차(20), 매수비중2차(30), 매수비중3차(50);
input : 매도비중1차(50), 매도비중2차(50);
input : 전략식진입횟수(1);
input : 타점보유일수(3);
var : sum(0),mav(0),cnt(0),eup(0),edn(0),Didx(0),LatestEntryDidx(0);
var : TimeCond(false),Xcond1(false),Xcond2(false),Loss(0),LatestEntryDlow(0);
#일자수 계산
if date != date[1] Then
Didx = Didx+1;
#당일포함 일봉 P개의 종가를 누적
sum = 0;
for cnt = 0 to P-1{
sum = sum+DayClose(cnt);
}
#누적값을 P로 나누어 평균값 산출
mav = sum/P;
#상단
Eup = mav+mav*(매수위치1차/100);
#하단
Edn = mav-mav*(매수위치1차/100);
#지정일 지정시간이 되면 TimeCond는 True(그전에는 false)
if sdate == 전략식시작일자 and (stime == 090000 or (stime > 전략식시작시간 and stime[1] < 전략식시작시간 )) then
TimeCond = true;
#TimeCond가 True가 된 후
if TimeCond == true then{
#무포지션 상태에서 매수위치1차에 도달하면 매수
if MarketPosition == 0 and TotalTrades == 0 Then
buy("1차매수",atlimit,Edn*(1+매수위치보정/100),Floor((전략총매수금액/c)*(매수비중1차/100)));
#첫매수이후
if MarketPosition == 1 Then{
#최근 진입시점의 일자수 저장
if CurrentContracts > CurrentContracts[1] Then{
LatestEntryDidx = Didx;
LatestEntryDlow = daylow;
}
#1차매수 발생 후 매수위치2차에 도달하면 매수
if MaxEntries == 1 Then
buy("2차매수",atlimit,Edn[BarsSinceEntry]*(1-매수위치2차/100),Floor((전략총매수금액/c)*(매수비중2차/100)));
#1차매수 발생 후 매수위치3차에 도달하면 매수
if MaxEntries == 2 Then
buy("3차매수",atlimit,Edn[BarsSinceEntry]*(1-매수위치3차/100),Floor((전략총매수금액/c)*(매수비중3차/100)));
#1차매도가 한번 발생하면 더이상 발생못하도록 Xcond1은 true
if LatestExitName(0) == "1차매도" then
Xcond1 = true;
#2차매도가 한번 발생하면 더이상 발생못하도록 Xcond2는 true
if LatestExitName(0) == "2차매도" then
Xcond2 = true;
#Xcond1이 false일때
#진입이후 최저가에서 매도위치1차 만큼 상승하면 일부 청산
if Xcond1 == false Then
exitlong("1차매도",Atlimit,lowest(L,BarsSinceEntry)*(1+매도위치1차/100),"",Floor(MaxContracts*(매도비중1차/100)),1);
#Xcond2가 false일
#진입이후 최저가에서 매도위치2차 만큼 상승하면 전량청산
if Xcond2 == false Then
exitlong("2차매도",Atlimit,lowest(L,BarsSinceEntry)*(1+매도위치2차/100));
#최근 진입후 3일이상 경과(현재 일자수가 최근진입시점의 일자수보다 3이상증가)
if Didx >= LatestEntryDidx+타점보유일수 and Xcond1 == false and CurrentContracts == CurrentContracts[1] Then{
#최근 진입이후 3일되었을때의 최근진입일 포함3일 최저가 계산
if date != date[1] and Didx == LatestEntryDidx[BarsSinceEntry]+3 Then{
Loss = daylow(1);
for cnt = 1 to 타점보유일수{
if daylow(cnt) < Loss Then
Loss = daylow(cnt);
}
}
#Loss값 이하로 가격하락하면 전량 청산
exitlong("손절",AtStop,Loss);
}
#1차매도가 발생한 상황
#가장 최근 진입일의 당일최저가보다 낮은 시세 발생하면 전량청산
if Xcond1 == true and CurrentContracts == CurrentContracts[1] Then{
exitlong("익절",AtStop,LatestEntryDlow);
}
}
else{#매수포지션이 아니면 false로 초기화
Xcond1 = false;
Xcond2 = false;
}
}
2
지표는 시스템과 연동이 되지 않아
1차매수당시의 하단값을 모릅니다.
하단과 하단+1%, 하단-7%,하단-14% 선이 그려집니다.
input : P(10),매수위치1차(10), 매수위치2차(7), 매수위치3차(14);
input : 매수위치보정(1);
var : sum(0),mav(0),cnt(0),eup(0),edn(0);
#당일포함 일봉 P개의 종가를 누적
sum = 0;
for cnt = 0 to P-1{
sum = sum+DayClose(cnt);
}
#누적값을 P로 나누어 평균값 산출
mav = sum/P;
#상단
Eup = mav+mav*(매수위치1차/100);
#하단
Edn = mav-mav*(매수위치1차/100);
plot1(Edn,"하단");
plot2(Edn*(1+매수위치보정/100),"매수위치1차");
plot3(Edn*(1-매수위치2차/100),"매수위치2차");
plot4(Edn*(1-매수위치3차/100),"매수위치3차");
즐거운 하루되세요
> 종풍화성 님이 쓴 글입니다.
> 제목 : 시스템식 부탁드립니다.
> 안녕하세요.. 항상 좋은 답변 감사드립니다.
다음과 같은 시스템식 부탁드립니다.
1. 일반사항
1) 일봉상 엔벨로프 지표를 기준으로 3분봉에서 매매하려고 합니다.
2) 3분할매수 2분할 매도
3) 외부변수는 다음과 같습니다.
2. 매수기준 - 그림1)참조
1) 일봉상 엔벨로프의 하단선에서 1차매수
"매수위치1차":"매수위치1차" 즉, 외부변수가 10인경우
엔벨로프 10:10 의 하단선에서 1차매수이나
여기에 "매수위치보정" 변수인 (1)% 위에서 1차매수
정리하면 일봉상 10:10 엔벨로프 하단선 가격의 1% 위에서 1차매수
2) 1차매수한날 엔벨로프 하단선가격에서 "매수위치2차" 즉 7% 하락시 2차매수
3) 1차매수한날 엔벨로프 하단선가격에서 "매수위치3차' 즉 14% 하락시 3차매수
4) 각분할매수 타점에서 전략총매수금액의 매수비중 %만큼 매수
5) 아래 외부변수와 같이 시작일자, 시작시간, 진입횟수도 부탁드립니다.
6) 각각의 매수타점에서 매수가 발생시 "1차매수", "2차매수", "3차매수"를 차트에 표시
3. 매도기준
1) 각타점에서 매수후 저점에서 "매도위치"변수 만큼 반등시 각각 매도
"매도위치1차(7)"인 경우 매수후 저점에서 7% 이상 반등시 매도비중만큼 1차매도
2) 각분할매도 타점에서 총매수금액의 매도비중 %만큼 매도
3) 각각의 매도타점에서 매도가 발생시 "1차매도", "2차매도"를 차트에 표시
4. 손절기준
1) 각각의 매수위치에서 매수후 타점보유일수 만큼 경과하면 해당보유일수 동안의 저점이탈시 손절
예: 1차매수시 "타점보유일수(3)" 인 경우 1차매수후 매수일 포함 3일동안 해당수익이 발생하지 못해
1차매도가 이루어지지 않았을 경우 3일동안의 최저점을 이탈시 손절
또한 같은 경우로 1차매수+2차매수가 되었을때 최종2차매수후 3일동안 1차매도가 이루어지지 않를
경우 최종 2차매수후 3일동안의 최저점을 이탈시 손절
1차매수+2차매수+3차매수가 되었을때 최종3차매수후 3일동안 1차매도도 이루어 지지않았을 경우
최종 3차매수후 3일동안으 최저점을 이탈시 손절
2) 각각의 매수후 1차매도만 이루어 지고 하락시 매수당시의 최저점 이탈하면 익절
예: 1차매수 --> 1차매도 --> 하락시 : 1차매수당시 최저점 이탈히면 익절
1차매수+2차매수 --> 1차매도 --> 하락시 : 2차매수당시 최저점 이탈하면 익절
1차매수+2차매수+3차매수 --> 1차매도 --> 하락시 : 3차매수당시 최저점 이탈하면 익절
3) 1)번항목의 손절처리가 된경우 "손절" 2)번항목의 익절처리가 된경우 "익절"로 차트에 표시
5. 일봉상 엔벨로프위치를 3분봉에 사용하도록 지표식도 부탁드립니다.
1) 매수위치1차, 매수위치2차, 매수위치3차의 지표
2) 외부변수 사용가능하도록 변수 부탁드립니다.
-------------------------------------------------------------------------------------------
input : 전략식시작일자(20151007), 전략식시작시간(090000), 전략총매수금액(2000);
input : 매수위치1차(10), 매수위치2차(7), 매수위치3차(14);
input : 매수위치보정(1)
input : 매도위치1차(7), 매도위치2차(14);
input : 매수비중1차(20), 매수비중2차(30), 매수비중3차(50);
input : 매도비중1차(50), 매도비중2차(50);
input : 전략식진입횟수(1);
input : 타점보유일수(3);