커뮤니티
타주기 시스템식 문의드립니다.
2016-07-07 16:18:57
136
글번호 99860
늘 자세하고 친절한 답변 감사드립니다.
기본차트 매매식
Input : Period(12), Period1(5),Period2(5);
var : StoK(0),StoD(0);
StoK = StochasticsK(Period,Period1);
StoD = StochasticsD(Period,Period1,Period2);
#매수
if stok >= 20 and stok <= 80 and crossup(stok,stod) Then
buy();
#매도
if stok >= 20 and stok <= 80 and crossdown(stok,stod) Then
sell();
참조데이터 매매식
Input : Period(12), Period1(5),Period2(5);;
var : StoK(0),StoD(0);
StoK = StochasticsK(Period,Period1);
StoD = StochasticsD(Period,Period1,Period2);
#매수
if stok >= 20 and stok <= 80 and stok > stod Then
buy();
#매도
if stok >= 20 and stok <= 80 and stok < stod Then
sell();
위와 같은 식으로
진입은 기본매매식 매수로 하지만, 참조데이터 매도신호발생시에는 하지 않는다.
청산은 기본매매식 매도신호가 발생하거나 참조데이터 매도신호가 발생하면 매도한다.
부탁드리겠습니다.
이것만 이해되면 시스템식은 왠만큼 잡을 것으로 기대됩니다.
답변 1
예스스탁 예스스탁 답변
2016-07-08 11:11:20
안녕하세요
예스스탁입니다.
주석추가했습니다.
아래 내용 참고하시기 바랍니다.
Input : Period(12), Period1(5),Period2(5);
#변수선언시 데이터번호를 지정
#data1의 계산값을 저장받을 변수
var : StoK1(0,data1),StoD1(0,data1);
#data2의 계산값을 저장받을 변수
var : StoK2(0,data2),StoD2(0,data2),T(0,data2);
#data1 스토케스틱
#계산식을 데이터번호로 묶어줌
StoK1 = data1(StochasticsK(Period,Period1));
StoD1 = data1(StochasticsD(Period,Period1,Period2));
#data2 스토케스틱
StoK2 = data2(StochasticsK(Period,Period1));
StoD2 = data2(StochasticsD(Period,Period1,Period2));
#data2에서 최근 매수조건 만족했으면 1
if stok2 >= 20 and stok2 <= 80 and stok2 > stod2 Then
T = 1;
#data2에서 최근 매도조건 만족했으면 -1
if stok2 >= 20 and stok2 <= 80 and stok2 < stod2 Then
T = -1;
#진입
#T는 -1이 아니고 data1조건이 만족하면 매수진입
if T != -1 and stok1 >= 20 and stok1 <= 80 and crossup(stok1,stod1) Then
buy();
#T는 1이 아니고 data1조건이 만족하면 매도진입
if T != 1 and stok1 >= 20 and stok1 <= 80 and crossdown(stok1,stod1) Then
sell();
#매수포지션 청산
#data1,data2 매도조건 중 하나가 발생하면 청산
if MarketPosition == 1 Then{
if stok1 >= 20 and stok1 <= 80 and crossdown(stok1,stod1) Then
exitlong("bx1");
if stok2 >= 20 and stok2 <= 80 and stok2 < stod2 Then
exitlong("bx2");
}
#매도포지션 청산
#data1,data2 매수조건 중 하나가 발생하면 청산
if MarketPosition == -1 Then{
if stok1 >= 20 and stok1 <= 80 and crossup(stok1,stod1) Then
ExitShort("sx1");
if stok2 >= 20 and stok2 <= 80 and stok2 > stod2 Then
ExitShort("sx2");
}
즐거운 하루되세요
> 탄탄시스템 님이 쓴 글입니다.
> 제목 : 타주기 시스템식 문의드립니다.
> 늘 자세하고 친절한 답변 감사드립니다.
기본차트 매매식
Input : Period(12), Period1(5),Period2(5);
var : StoK(0),StoD(0);
StoK = StochasticsK(Period,Period1);
StoD = StochasticsD(Period,Period1,Period2);
#매수
if stok >= 20 and stok <= 80 and crossup(stok,stod) Then
buy();
#매도
if stok >= 20 and stok <= 80 and crossdown(stok,stod) Then
sell();
참조데이터 매매식
Input : Period(12), Period1(5),Period2(5);;
var : StoK(0),StoD(0);
StoK = StochasticsK(Period,Period1);
StoD = StochasticsD(Period,Period1,Period2);
#매수
if stok >= 20 and stok <= 80 and stok > stod Then
buy();
#매도
if stok >= 20 and stok <= 80 and stok < stod Then
sell();
위와 같은 식으로
진입은 기본매매식 매수로 하지만, 참조데이터 매도신호발생시에는 하지 않는다.
청산은 기본매매식 매도신호가 발생하거나 참조데이터 매도신호가 발생하면 매도한다.
부탁드리겠습니다.
이것만 이해되면 시스템식은 왠만큼 잡을 것으로 기대됩니다.