예스스탁
예스스탁 답변
2021-02-19 13:12:12
안녕하세요
예스스탁입니다.
아래식 참고하셔서 수정보완해 사용하시기 바랍니다.
1-1
input : ntime(30);
var : S1(0),D1(0),TM(0),TF(0),cnt(0),OO(0);
var : HH(0),LL(0),B(0),S(0);
if Bdate != Bdate[1] Then
{
S1 = TimeToMinutes(stime);
D1 = sdate;
}
if D1 > 0 then
{
if sdate == D1 Then
TM = TimeToMinutes(stime)-S1;
Else
TM = TimeToMinutes(stime)+1440-S1;
TF = TM%ntime;
if Bdate != Bdate[1] or
(Bdate == Bdate[1] and ntime > 1 and TF < TF[1]) or
(Bdate == Bdate[1] and ntime > 1 and TM >= TM[1]+ntime) or
(Bdate == Bdate[1] and ntime == 1 and TM > TM[1]) Then
{
OO = O;
}
Plot1(DayOpen);
plot2(OO);
}
1-2
input : ntime(30);
input : StartTime(80000),EndTime(023000);
input : 조정틱(12),익절틱수(30),손절틱수(15);
var : S1(0),D1(0),TM(0),TF(0),cnt(0),OO(0);
var : HH(0),LL(0),B(0),S(0),oh(0),ol(0);
var : Tcond(false);
if sDate != sDate[1] Then
SetStopEndofday(Endtime);
if (sdate != sdate[1] and stime >= EndTime) or
(sdate == sdate[1] and stime >= EndTime and stime[1] < EndTime) Then
Tcond = False;
if (sdate != sdate[1] and stime >= StartTime) or
(sdate == sdate[1] and stime >= StartTime and stime[1] < StartTime) Then
{
Tcond = true;
SetStopEndofday(0);
}
if Bdate != Bdate[1] Then
{
S1 = TimeToMinutes(stime);
D1 = sdate;
oh = h;
ol = L;
}
if D1 > 0 then
{
if sdate == D1 Then
TM = TimeToMinutes(stime)-S1;
Else
TM = TimeToMinutes(stime)+1440-S1;
TF = TM%ntime;
if Bdate != Bdate[1] or
(Bdate == Bdate[1] and ntime > 1 and TF < TF[1]) or
(Bdate == Bdate[1] and ntime > 1 and TM >= TM[1]+ntime) or
(Bdate == Bdate[1] and ntime == 1 and TM > TM[1]) Then
{
OO = O;
HH = H;
LL = L;
}
if H > HH Then
HH = H;
if LL < L Then
LL = L;
if CrossUp(h,DayOpen) Then
oh = h;
if CrossDown(l,DayOpen) Then
ol = l;
if c >= DayOpen and h > oh Then
oh = h;
if c <= DayOpen and l < ol Then
ol = l;
var1 = 0;
var2 = 0;
if C >= DayOpen and C < OO and OO >= DayOpen Then
{
if LL > OO-PriceScale*조정틱 Then
var1 = OO;
Else
var2 = OO;
}
if C < DayOpen Then
{
if ol > DayOpen-PriceScale*조정틱 Then
var1 = DayOpen;
Else
Var2 = DayOpen;
}
IF Tcond == true Then
{
if var1 > 0 Then
Buy("b1",AtStop,var1);
if var2 > 0 Then
Buy("b2",AtStop,var2);
}
var3 = 0;
var4 = 0;
if C <= DayOpen and C > OO and OO <= DayOpen Then
{
if HH < OO+PriceScale*조정틱 Then
var3 = OO;
Else
var4 = OO;
}
if C > DayOpen Then
{
if oh < DayOpen+PriceScale*조정틱 Then
var3 = DayOpen;
Else
Var4 = DayOpen;
}
if Tcond == true Then
{
if var3 > 0 Then
Sell("s1",AtStop,var1);
if var4 > 0 Then
Sell("s2",AtStop,var2);
}
}
SetStopProfittarget(PriceScale*익절틱수,PointStop);
SetStopLoss(PriceScale*손절틱수,PointStop);
2-1
plot1을 가변적으로 할수 없어
시가대비 +- 20틱 5개 그리는 지표식 작성해 드립니다.
필요하신만큼 추가하시기 바랍니다.
input : 틱(20),조정틱(12),손절틱수(30);
var : t(0),OO(0),PO(0),NO(0),entry(False),hh(0),ll(0);
t = PriceScale*틱;
Plot1(DayOpen);
Plot2(DayOpen+t*1);
Plot3(DayOpen+t*2);
Plot4(DayOpen+t*3);
Plot5(DayOpen+t*4);
Plot6(DayOpen+t*5);
Plot7(DayOpen-t*1);
Plot8(DayOpen-t*2);
Plot9(DayOpen-t*3);
Plot10(DayOpen-t*4);
Plot11(DayOpen-t*5);
2-2
input : 틱(20),조정틱(12),손절틱수(30);
var : t(0),OO(0),PO(0),NO(0),entry(False),hh(0),ll(0);
t = PriceScale*틱;
if Bdate != Bdate[1] Then
{
OO = O;
hh = h;
ll = l;
entry = true;
}
if H >= OO+t Then
{
OO = OO + Floor(abs(H-OO)/t)*t;
PO = OO+t;
NO = OO-t;
entry = true;
hh = h;
ll = l;
}
if L <= OO-t Then
{
OO = OO - Floor(abs(L-OO)/t)*t;
PO = OO+t;
NO = OO-t;
entry = true;
hh = h;
ll = l;
}
if h > hh Then
hh = h;
if l < ll Then
ll = l;
if MarketPosition <= 0 and entry == true and C < OO Then
{
if LL > OO-PriceScale*조정틱 Then
Buy("b1",AtStop,OO);
Else
Buy("b2",AtStop,OO);
}
if MarketPosition >= 0 and entry == true and C > OO Then
{
if hh < OO+PriceScale*조정틱 Then
Sell("s1",AtStop,OO);
Else
Sell("s2",AtStop,OO);
}
if MarketPosition != 0 and MarketPosition != MarketPosition[1] Then
entry = False;
if MarketPosition == 1 Then
ExitLong("bx",AtLimit,PO[BarsSinceEntry]);
if MarketPosition == -1 Then
ExitShort("sx",AtLimit,NO[BarsSinceEntry]);
SetStopLoss(손절틱수*PriceScale,PointStop);
즐거운 하루되세요
> 예스스탁 님이 쓴 글입니다.
> 제목 : Re : 전화주시기 바랍니다.(02-3453-1060)
>
> 황금룰 님이 쓴 글입니다.
> 제목 : 수식 부탁드립니다
> 항상 노고에 감사드립니다.
혼자 시도를 해보았으나 정밀한 진입이 어려워서 부탁을 드립니다.
해외선물 매매식 1번
주거래챠트 : 30틱챠트 또는 1분봉 거래
지표식
주거래 챠트에서 당일 시가선과 30분봉 시가선을 만든다
전략
[켄들이 당일 시가 위에서는 30분 양봉에서만 30분 시가기준선 매수]
1.당일 시가 또는 30분 양봉 시가 기준선을 첫 번째 상승 돌파시 30분시가 매수1(진입명 B1)
익절(30틱)과 손절(15틱)은 외부변수
2.당일 시가 또는 30분 양봉 시가기준선을 12틱이내 조정(외부변수) 후 재상승 돌파시 30분시가 매수2(진입명 B2)
익절(30틱)과 손절(15틱)은 외부변수
[켄들이 당일 시가 아래에서는 30분 음봉에서만 시가기준선 매도]
3.당일 시가 또는 30분 음봉 시가기준선을 첫 번째 하락 돌파시 30분봉 시가 매도1(진입명 S1)
익절(30틱)과 손절(15틱)은 외부변수
4.당일 시가 또는 30분 음봉 기준선을 12틱 이내 반등(외부변수) 후 재하락 돌파시 기준선 매도2(진입명 S2)
익절(30틱)과 손절(15틱)은 외부변수
*30분 시가기준선이 추가로 생성되면 새롭게 생성된 기준선을 기준으로 B1 B2 S1 S2 매매를 반복함
거래 시작시간(한국시간 기준 08:00)과 종료시간(한국시간 기준 02시30분)도 외부변수로 작성해 주시면 감사하겠습니다.
해외선물 매매식 2번
주거래챠트 3분봉
지표식
당일 시가선을 기준으로 20틱 기준(외부변수)으로 기준선을 만들어 주고 기존 기준선을 돌파시 돌파된 방향으로 새로운 기준선을 20틱 간격으로 상방이든 하방이든 계속해서 만들어 줍니다.
[시가 또는 기준선 매수전략]
1.당일 시가 또는 기준선을 첫 번째 상승 돌파시 기준선 매수1(진입명 B1)
익절은 다음 기준선에서 청산
손절은 13틱(외부변수)
2.당일 시가 또는 기준선을 12틱이내 조정(외부변수) 후 재상승 돌파시 기준선 매수2(진입명 B2)
익절은 다음 기준선에서 청산
손절은 13틱(외부변수)
[시가 또는 기준선 매도전략]
3.당일 시가 또는 기준선을 첫 번째 하락 돌파시 기준선 매도1(진입명 S1)
익절은 다음 기준선에서 청산
손절은 13틱(외부변수)
4.당일 시가 또는 기준선을 12틱 이내 반등(외부변수) 후 재하락 돌파시 기준선 매도2(진입명 S2)
익절은 다음 기준선에서 청산
손절은 13틱(외부변수)
*같은 기준선에서 먼저진입한 신호가 있으면 먼저 진입한 신호가 청산되기전에는 반대 방향은 진입 금지
*기준선이 추가로 생성되면 새롭게 생성된 기준선을 기준으로 B1 B2 S1 S2 매매를 반복함
거래 시작시간(한국시간 기준 08:00)과 종료시간(한국시간 기준 02시30분)도 외부변수로 작성해 주시면 감사하겠습니다.