커뮤니티

트레이닝 궁굼합니다. 가능할까요?

프로필 이미지
제너리
2025-08-05 22:36:37
130
글번호 193019
답변완료
아래 지표설정대로 제가 지정하는 종목에(1개~다수) 대해서 일봉기준으로 매매하고 싶습니 다. 1. 매수후 중복으로 나오는 매수신호는 무시 2. 지정하는 종목(1~다수) 3. 매도신호시 청산(통합주문2101에서 해도 무방한가요?) input : length(15); input : show_levl(true); var : up(0),dn(0),A(0),emaValue(0),correction(0),zlma(0); var : signalUp(False),signalDn(False),zlma_color(0),ema_col(0); var : TOP(0),BTM(0),box(0),tx(0),tx1(0),check_signals(False); up = Black; dn = Blue; #var box1 = box(na) // Variable to store the box a = atr(200); emaValue = ema(close, length); correction = close + (close - emaValue); zlma = ema(correction, length); signalUp = CrossUp(zlma, emaValue); signalDn = CrossDown(zlma, emaValue); zlma_color = iff(zlma > zlma[3] , up , iff(zlma < zlma[3] , dn , Nan)); ema_col = iff(emaValue < zlma , up , dn); plot1(zlma, "ZLMA",zlma_color); // Plot ZLMA plot2(emaValue,"EMA",ema_col); if signalUp Then { Top = zlma; BTM = zlma-A; box = box_new(sDate,sTime,Top,NextBarSdate,NextBarStime,BTM); Box_SetColor(box,up); Box_SetFill(box,true); var3 = (Top+BTM)/2; tx = Text_New(NextBarSdate,NextBarStime,var3,NumToStr(C,2)); Text_SetStyle(tx,1,2); } else if signalDn Then { Top = zlma+A; BTM = zlma; box = box_new(sDate,sTime,Top,NextBarSdate,NextBarStime,BTM); Box_SetColor(box,dn); Box_SetFill(box,true); var3 = (Top+BTM)/2; tx = Text_New(NextBarSdate,NextBarStime,var3,NumToStr(C,2)); Text_SetStyle(tx,1,2); } Else { Box_SetEnd(box,sDate,sTime,BTM); Text_SetLocation(tx,sDate,sTime,var3); } check_signals = signalUp or signalDn; if CrossDown(high, BTM) and emaValue > zlma Then { tx1 = Text_New(sDate[1],sTime[1],H[1],"▼"); Text_SetStyle(tx1,2,1); Text_SetColor(tx1,dn); } if CrossUp(low, Top) and emaValue < zlma Then { tx1 = Text_New(sDate[1],sTime[1],L[1],"▲"); Text_SetStyle(tx1,2,0); Text_SetColor(tx1,up); }
시스템
답변 1
프로필 이미지

예스스탁 예스스탁 답변

2025-08-06 10:07:22

안녕하세요 예스스탁입니다. 올리신 지표식을 시스템식으로 변경하면 아래와 같습니다. 다만 시스템은 직접 원하는 종목의 차트를 열어 해당 식을 자동주문으로 적용해 주셔야 하며 자동주문시 매수신호만 주문하고 매도는 주문되지 않게 할 수는 없습니다. 수동주문 여부를 시스템에서는 알수 없어 사용자분이 수동으로 청산해도 시스템에서 매도조건 만족하면 주문이 집행됩니다. input : length(15); input : show_levl(true); var : up(0),dn(0),A(0),emaValue(0),correction(0),zlma(0); var : signalUp(False),signalDn(False),zlma_color(0),ema_col(0); var : TOP(0),BTM(0),box(0),tx(0),tx1(0),check_signals(False); up = Black; dn = Blue; #var box1 = box(na) // Variable to store the box a = atr(200); emaValue = ema(close, length); correction = close + (close - emaValue); zlma = ema(correction, length); signalUp = CrossUp(zlma, emaValue); signalDn = CrossDown(zlma, emaValue); zlma_color = iff(zlma > zlma[3] , up , iff(zlma < zlma[3] , dn , Nan)); ema_col = iff(emaValue < zlma , up , dn); if signalUp Then { Top = zlma; BTM = zlma-A; var3 = (Top+BTM)/2; } else if signalDn Then { Top = zlma+A; BTM = zlma; var3 = (Top+BTM)/2; } check_signals = signalUp or signalDn; if CrossDown(high, BTM) and emaValue > zlma Then { Buy("b"); } if CrossUp(low, Top) and emaValue < zlma Then { ExitLong("bx"); } 즐거운 하루되세요 > 제너리 님이 쓴 글입니다. > 제목 : 트레이닝 궁굼합니다. 가능할까요? > 아래 지표설정대로 제가 지정하는 종목에(1개~다수) 대해서 일봉기준으로 매매하고 싶습니 다. 1. 매수후 중복으로 나오는 매수신호는 무시 2. 지정하는 종목(1~다수) 3. 매도신호시 청산(통합주문2101에서 해도 무방한가요?) input : length(15); input : show_levl(true); var : up(0),dn(0),A(0),emaValue(0),correction(0),zlma(0); var : signalUp(False),signalDn(False),zlma_color(0),ema_col(0); var : TOP(0),BTM(0),box(0),tx(0),tx1(0),check_signals(False); up = Black; dn = Blue; #var box1 = box(na) // Variable to store the box a = atr(200); emaValue = ema(close, length); correction = close + (close - emaValue); zlma = ema(correction, length); signalUp = CrossUp(zlma, emaValue); signalDn = CrossDown(zlma, emaValue); zlma_color = iff(zlma > zlma[3] , up , iff(zlma < zlma[3] , dn , Nan)); ema_col = iff(emaValue < zlma , up , dn); plot1(zlma, "ZLMA",zlma_color); // Plot ZLMA plot2(emaValue,"EMA",ema_col); if signalUp Then { Top = zlma; BTM = zlma-A; box = box_new(sDate,sTime,Top,NextBarSdate,NextBarStime,BTM); Box_SetColor(box,up); Box_SetFill(box,true); var3 = (Top+BTM)/2; tx = Text_New(NextBarSdate,NextBarStime,var3,NumToStr(C,2)); Text_SetStyle(tx,1,2); } else if signalDn Then { Top = zlma+A; BTM = zlma; box = box_new(sDate,sTime,Top,NextBarSdate,NextBarStime,BTM); Box_SetColor(box,dn); Box_SetFill(box,true); var3 = (Top+BTM)/2; tx = Text_New(NextBarSdate,NextBarStime,var3,NumToStr(C,2)); Text_SetStyle(tx,1,2); } Else { Box_SetEnd(box,sDate,sTime,BTM); Text_SetLocation(tx,sDate,sTime,var3); } check_signals = signalUp or signalDn; if CrossDown(high, BTM) and emaValue > zlma Then { tx1 = Text_New(sDate[1],sTime[1],H[1],"▼"); Text_SetStyle(tx1,2,1); Text_SetColor(tx1,dn); } if CrossUp(low, Top) and emaValue < zlma Then { tx1 = Text_New(sDate[1],sTime[1],L[1],"▲"); Text_SetStyle(tx1,2,0); Text_SetColor(tx1,up); }