예스스탁
예스스탁 답변
2024-02-07 09:49:01
안녕하세요
예스스탁입니다.
문의하신 내용은 차트의 기본종목은 분봉, 참조데이터는 일봉으로 셋팅하고
아래식을 적용하셔야 합니다.
시간조건이나 당일손실청산시 진입제한등을 하기 위해서는 기본종목은 분봉이어야 하고
차트에 봉의 최대조회갯수가 1만봉이므로
6년신고가나 역사적신고가를 계산하기 위해서는 과거 장기 데이터가 필요하므로
일봉데이터를 추가되어야 합니다.
차트 왼쪽 상단의 종목선택버튼 중 왼족은 기본종목, 오른쪽은 참조데이터를 선택해 추가하는 버튼입니다.
참조데이터는 기본종목과 동일종목을 다른주기로 셋팅이 가능합니다.
input : 금액(2000000);
var : HisH(0,Data2),cnt(0),YH6(0,Data2),trade(False);
Array : YH[20](0,Data2);
#역사적 신고가(참조데이터의 전체봉 중 최고가)
if HisH == 0 or (HisH > 0 and Data2(H) > HisH) Then
HisH = data2(H);
#연간 최고가 계산
if data2(Bdate > Bdate[1]+1000) Then
{
For cnt = 19 DownTo 1
{
YH[cnt] = YH[cnt-1];
}
YH[0] = Data2(H);
}
if YH[0] > 0 and Data2(H) > YH[0] Then
YH[0] = Data2(H);
if Bdate != Bdate[1] Then
trade = true;
if TotalTrades > TotalTrades[1] and PositionProfit(0) < 0 Then
trade = False;
if MarketPosition == 0 and trade == true and sTime >= 91000 and sTime < 150000 Then
{
#역사적 신고가+1틱이상이면 매수
Buy("b1",AtStop,HisH+PriceScale*1,Floor(금액/max(NextBarOpen,HisH+PriceScale*1)));
if YH[5] > 0 Then
{
#6년 최고가 계산
YH6 = 0;
For cnt = 0 to 5
{
if YH6 == 0 or (YH6 > 0 and YH[cnt] > YH6) Then
YH6 = YH[cnt];
}
#6년 최고가 +1틱이면 매수
if YH6 > 0 Then
Buy("b2",AtStop,YH6+PriceScale*1,Floor(금액/max(NextBarOpen,YH6+PriceScale*1)));
}
}
if MarketPosition == 1 Then
{
if IsEntryName("b1") == true Then
var1 = HisH[BarsSinceEntry];
Else
var1 = YH6[BarsSinceEntry];
if CurrentContracts == MaxContracts Then
ExitLong("bx1",AtLimit,var1*1.02,"",Floor(MaxContracts*0.5),1);
Else
ExitLong("bx2",AtLimit,var1*1.04);
ExitLong("bl1",AtStop,var1*0.985);
ExitLong("bl2",AtStop,EntryPrice*0.96);
}
즐거운 하루되세요
> 노아 님이 쓴 글입니다.
> 제목 : 이러한 전략으로 매매할 수있는지 문의드립니다.
> 매매종목 조건(A and B)
A: 6년 신고가 or 역사적 신고가
B: 9시부터 당일 누적 거래대금 800억원
매매시간
9:10부터 15:00까지 매매
매수
전고점 한틱 위에서 매수
매도
전고점 대비 2% 상승시 50% 익절,
전고점 대비 4% 상승시 100% 익절,
현고점 대비 1.5% 하락에서 전량 매도
매수가 대비 4% 100% 손절
진입 후 손실한 종목이 있을 시, 당일 동일 종목 재진입하지 않음