예스스탁
예스스탁 답변
2020-10-16 12:58:26
안녕하세요
예스스탁입니다.
input : StartTime(90000),EndTime(100000);
var : cnt(0),hh(0),hl(0),ll(0),lh(0);
var : Tcond(false);
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;
if CountIf(C>O,2)[2] == 2 and
CountIf(C<O,2) == 2 Then
{
hh = h;
hl = l;
For cnt = 0 to 3
{
if h[cnt] > hh Then
{
hh = h[cnt];
hl = l[cnt];
}
}
if hh >= hl+PriceScale*20 and hh <= hl+PriceScale*60 Then
Condition1 = true;
}
if MarketPosition <= 0 and Condition1 == true and NextBarOpen < hl and Tcond == true Then
{
Buy("b",AtStop,hl+PriceScale*5);
ExitLong("BP.",AtLimit,hL+(HH-hl)*0.75);
ExitLong("BL.",AtStop,L);
}
if CountIf(C<O,2)[2] == 2 and
CountIf(C>O,2) == 2 Then
{
LL = l;
lH = H;
For cnt = 0 to 3
{
if L[cnt] < LL Then
{
LL = L[cnt];
LH = H[cnt];
}
}
if LH >= LL+PriceScale*20 and LH <= LL+PriceScale*60 Then
Condition2 = true;
}
if MarketPosition <= 0 and Condition2 == true and NextBarOpen > LH and Tcond == true Then
{
Sell("s",AtStop,LH-PriceScale*5);
ExitShort("SP.",AtLimit,LH-(LH-LL)*0.75);
ExitShort("SL.",AtStop,H);
}
if MarketPosition ==1 Then
{
Condition1 = False;
ExitLong("BP",AtLimit,hL[BarsSinceEntry]+(HH[BarsSinceEntry]-hl[BarsSinceEntry])*0.75);
ExitLong("BL",AtStop,L[BarsSinceEntry+1]);
}
if MarketPosition == -1 Then
{
Condition2 = False;
ExitShort("SP",AtLimit,LH[BarsSinceEntry]-(LH[BarsSinceEntry]-LL[BarsSinceEntry])*0.75);
ExitShort("SL",AtStop,H[BarsSinceEntry+1]);
}
즐거운 하루되세요
> 고나리자 님이 쓴 글입니다.
> 제목 : 수고하십니다.
> 매수조건
c[3],c[2]이 양봉이고, c[1],c[0]이 음봉이며, 이중 H값이 가장 높은 최고가봉을 기준봉으로 삼고, 기준봉의 길이는 20틱이상 60이하의 장대봉이어야 한다.
c[0] 다음의 현재봉의 시작가가 기준봉의 L값보다 낮은상태에서, 기준봉의 L값보다 +5틱돌파할때 매수진입한다.
(atstop이나 atlimit로 실시간 매수 진입할수있게 부탁합니다.)
익절은 기준봉의 3/4지점도달까지 상승시 청산, 손절은 매수진입봉의 직전앞봉의 L값도달시 청산
매도조건은 위조건 반대입니다.
국선 오전장 9:00~10:00까지 매매하는 시간설정도 부탁드립니다.
감사합니다.