커뮤니티

질문드립니다

프로필 이미지
베비슬립
2017-10-19 16:17:12
135
글번호 113496
답변완료
항상감사드립니다 좋은하루되세요! 1. 12시~ 18시까지 진입한포지션의 익절,손절은 50틱 18시 ~ 03시까지 진입한포지션의 익절,손절은 80틱으로 되는 청산수식이 가능할까요? 주문명령은 시간이 지정되어있는데 청산하는건 어떻게 시간을넣는지모르겠네요.. 2 .lowd(0)와 daylow 는 어떤차이가있는지 궁금합니다 각각대입햇을때 결과가 달라서요! 3. 한 시스템명령안에서 각주문 명령마다 익절,청산 수치를 따로 지정할 수있나요? 4. 이 게시판에서본 지표인데요 var1 = dayhigh(1)-daylow(1); plot4(dayhigh(1)+var1*0.618,"전일고가+61.8%"); plot5(DayLow(1)-var1*0.382,"전일고가+38.2%"); plot4선에 터치햇을시 매도진입 plot5선에 터치햇을시 매수진입 하는 수식알수있을까요? if crossup then buy ~ 이런식으로 대입했더니 정확히 선에 터치하고 내려오는건 매도진입이 안되는경우가있는데 선에서 +- 1~3틱정도에 진입가능한식이 있을까요? 너무많이 질문드려서 죄송합니다 좋은하루되세요
시스템
답변 3
프로필 이미지

예스스탁 예스스탁 답변

2017-10-19 16:49:49

안녕하세요 예스스탁입니다. 1. if MarketPosition == 1 then { if EntryTime >= 120000 and EntryTime < 180000 Then { ExitLong("BP1",AtLimit,EntryPrice+PriceScale*50); ExitLong("BL1",AtStop,EntryPrice-PriceScale*50); } if EntryTime >= 180000 or EntryTime < 30000 Then { ExitLong("BP2",AtLimit,EntryPrice+PriceScale*80); ExitLong("BL2",AtStop,EntryPrice-PriceScale*80); } } if MarketPosition == -1 then { if EntryTime >= 120000 and EntryTime < 180000 Then { ExitShort("SP1",AtLimit,EntryPrice-PriceScale*50); ExitShort("SL1",AtStop,EntryPrice+PriceScale*50); } if EntryTime >= 180000 or EntryTime < 30000 Then { ExitShort("SP2",AtLimit,EntryPrice-PriceScale*80); ExitShort("SL2",AtStop,EntryPrice+PriceScale*80); } } 2 lowD와 daylow는 모두 일간저가를 리턴하는 함수입니다. 다른 점은 2가지가 있습니다. 초기화 시간 lowD는 모든 종목에서 밤0시를 기준으로 최저가를 계산지만 daylow는 거래소의 영업시간변경을 기준으로 최저가를 계산합니다. 그러므로 국내 주식이나 야간장이 없는 종목에서는 값이 같지만 24시간 거래되는 해외선물이나 야간장포함한 국내선물에서는 값이 달라지게 됩니다. 과거 데이터 lowD는 차트자체의 봉으로 일간값을 계산합니다 그러므로 차트에 없는 이전일의 값은 리턴하지 못합니다. 하지만 daylow는 차트의 첫봉의 날짜 +99이치의 일간데이터값이 추가로 제공되어 차트에 10일치의 데이터만 있을 경우, lowD(20)은 20일전 최저가를 리턴하지 못하지만 daylow(20)은 값을 리턴해 주게 됩니다. 일반적으로 특별한 경우가 아니면 일간시고저종가는 dayopen,dayhigh,daylow,dayclose함수를 이용합니다. 3 청산식에 진입명을 지정해 동작하게 하시면 됩니다. if 매수진입조건1 Then buy("b1"); if 매수진입조건2 Then buy("b2"); if 매도진입조건1 Then sell("s1"); if 매도진입조건2 Then sell("s2"); if MarketPosition == 1 then { if EntryName(0) == "b1" Then { ExitLong("BP1",AtLimit,EntryPrice+PriceScale*50); ExitLong("BL1",AtStop,EntryPrice-PriceScale*50); } if EntryName(0) == "b2" Then { ExitLong("BP2",AtLimit,EntryPrice+PriceScale*80); ExitLong("BL2",AtStop,EntryPrice-PriceScale*80); } } if MarketPosition == -1 then { if EntryName(0) == "s1" Then { ExitShort("SP1",AtLimit,EntryPrice-PriceScale*50); ExitShort("SL1",AtStop,EntryPrice+PriceScale*50); } if EntryName(0) == "s2" Then { ExitShort("SP2",AtLimit,EntryPrice-PriceScale*80); ExitShort("SL2",AtStop,EntryPrice+PriceScale*80); } } 4 아래 내용 참고하시기 바랍니다. var1 = dayhigh(1)-daylow(1); value1 = dayhigh(1)+var1*0.618; value2 = DayLow(1)-var1*0.382; if H < value1-PriceScale*1 Then sell("s",Atlimit,value1-PriceScale*1); if L > value2+PriceScale*1 Then buy("b",AtLimit,value2+PriceScale*1); 즐거운 하루되세요 > 베비슬립 님이 쓴 글입니다. > 제목 : 질문드립니다 > 항상감사드립니다 좋은하루되세요! 1. 12시~ 18시까지 진입한포지션의 익절,손절은 50틱 18시 ~ 03시까지 진입한포지션의 익절,손절은 80틱으로 되는 청산수식이 가능할까요? 주문명령은 시간이 지정되어있는데 청산하는건 어떻게 시간을넣는지모르겠네요.. 2 .lowd(0)와 daylow 는 어떤차이가있는지 궁금합니다 각각대입햇을때 결과가 달라서요! 3. 한 시스템명령안에서 각주문 명령마다 익절,청산 수치를 따로 지정할 수있나요? 4. 이 게시판에서본 지표인데요 var1 = dayhigh(1)-daylow(1); plot4(dayhigh(1)+var1*0.618,"전일고가+61.8%"); plot5(DayLow(1)-var1*0.382,"전일고가+38.2%"); plot4선에 터치햇을시 매도진입 plot5선에 터치햇을시 매수진입 하는 수식알수있을까요? if crossup then buy ~ 이런식으로 대입했더니 정확히 선에 터치하고 내려오는건 매도진입이 안되는경우가있는데 선에서 +- 1~3틱정도에 진입가능한식이 있을까요? 너무많이 질문드려서 죄송합니다 좋은하루되세요
프로필 이미지

베비슬립

2017-10-23 04:32:03

너무 친절한답변에 감사드립니다.. 미리감사드리며 혼자 공부하려는 노력없이 질문만 하는것처럼 보일까봐 죄송스럽습니다 ㅠㅠ 스스로 공부하며 배워나가도록 노력하겠습니다.. 오늘도 기분좋게 한주마무리하시길바라며 질문1. 시가 - 70틱 이상의 변동폭일때 지지선에서 매수 시가 + 70틱 이상의 변동폭일때 저항선에서 매도 시가 + 50 틱 이하의 변동폭일때 저항선 돌파시 매수 시가 - 50 틱 이하의 변동폭일때 지지선 돌파시 매도 질문2 여기서본 지표인데 한주가바뀌면 주단위로 수치도 같이 바뀌었으면좋겠습니다! var : cnt(0); Array : WH[10](0),WL[10](0); if DayOfWeek(Bdate) < DayOfWeek(Bdate[1]) Then{ WH[0] = H; WL[0] = L; for cnt = 1 to 9{ WH[cnt] = WH[cnt-1][1]; WL[cnt] = WL[cnt-1][1]; } } if H > WH[0] Then WH[0] = H; if L < WL[0] Then WL[0] = L; input : 텍스트소수점자리수(5); var : TL1(0),TL2(0),TL3(0),TL4(0); var : TL5(0),TL6(0),TL7(0),TL8(0); var : Tx1(0),Tx2(0),Tx3(0),Tx4(0); var : Tx5(0),Tx6(0),Tx7(0),Tx8(0); var : Tx11(0),Tx12(0),Tx13(0),Tx14(0); var : Tx15(0),Tx16(0),Tx17(0),Tx18(0); if L == WL[0] Then{ TL_Delete(TL2); TL_Delete(TL3); TL_Delete(TL4); TL2 = TL_New(sdate[1],stime[1],WL[0]+PriceScale*65,sdate,stime,WL[0]+PriceScale*65); TL3 = TL_New(sdate[1],stime[1],WL[0]+PriceScale*135,sdate,stime,WL[0]+PriceScale*135); TL4 = TL_New(sdate[1],stime[1],WL[0]+PriceScale*120,sdate,stime,WL[0]+PriceScale*120); TL_SetExtRight(TL2,true); TL_SetExtLeft(TL2,true); TL_SetExtRight(TL3,true); TL_SetExtLeft(TL3,true); TL_SetExtRight(TL4,true); TL_SetExtLeft(TL4,true); TL_SetColor(TL2,RED); TL_SetColor(TL3,RED); TL_SetColor(TL4,RED); TL_SetSize(TL2,0); TL_SetSize(TL3,0); TL_SetSize(TL4,0); } if H == WH[0] Then{ TL_Delete(TL6); TL_Delete(TL7); TL_Delete(TL8); TL6 = TL_New(sdate[1],stime[1],WH[0]-PriceScale*65,sdate,stime,WH[0]-PriceScale*65); TL7 = TL_New(sdate[1],stime[1],WH[0]-PriceScale*135,sdate,stime,WH[0]-PriceScale*135); TL8 = TL_New(sdate[1],stime[1],WH[0]-PriceScale*120,sdate,stime,WH[0]-PriceScale*120); TL_SetExtRight(TL6,true); TL_SetExtLeft(TL6,true); TL_SetExtRight(TL7,true); TL_SetExtLeft(TL7,true); TL_SetExtRight(TL8,true); TL_SetExtLeft(TL8,true); TL_SetColor(TL6,BLUE); TL_SetColor(TL7,BLUE); TL_SetColor(TL8,BLUE); TL_SetSize(TL6,0); TL_SetSize(TL7,0); TL_SetSize(TL8,0); } Text_Delete(Tx2); Text_Delete(Tx3); Text_Delete(Tx4); tx2 = Text_New(sdate,stime,WL[0]+PriceScale*65,"주중최저+65틱("+NumToStr(WL[0]+PriceScale*65,텍스트소수점자리수)+")"); tx3 = Text_New(sdate,stime,WL[0]+PriceScale*135,"주중최저+135틱("+NumToStr(WL[0]+PriceScale*135,텍스트소수점자리수)+")"); tx4 = Text_New(sdate,stime,WL[0]+PriceScale*120,"주중최저+120틱("+NumToStr(WL[0]+PriceScale*120,텍스트소수점자리수)+")"); Text_SetColor(tx2,red); Text_SetColor(tx3,red); Text_SetColor(tx4,red); text_setStyle(tx2,2,1); text_setStyle(tx3,2,1); text_setStyle(tx4,2,1); Text_Delete(Tx12); Text_Delete(Tx13); Text_Delete(Tx14); tx12 = Text_New(sdate,stime,WH[0]-PriceScale*65,"주중최고-65틱("+NumToStr(WH[0]-PriceScale*65,텍스트소수점자리수)+")"); tx13 = Text_New(sdate,stime,WH[0]-PriceScale*135,"주중최고-135틱("+NumToStr(WH[0]-PriceScale*135,텍스트소수점자리수)+")"); tx14 = Text_New(sdate,stime,WH[0]-PriceScale*120,"주중최고-120틱("+NumToStr(WH[0]-PriceScale*120,텍스트소수점자리수)+")"); Text_SetColor(tx12,blue); Text_SetColor(tx13,blue); Text_SetColor(tx14,blue); text_setStyle(tx12,1,1); text_setStyle(tx13,1,1); text_setStyle(tx14,1,1); 질문3 이식에서 라인을 없애도 텍스트박스는 안없어지는데 같이사라지게할수있을까요? input : HH(35),LL(30); var : value(0),Tx1(0),Tx2(0),Tx3(0),Tx4(0),Tx5(0),tx6(0),tx7(0),tx8(0); value = HH-LL; Plot1(HH+value*1.00,"H+100%",dayindex()+1); plot2(HH+value*0.50,"H+50%"); plot3(HH+value*0.35,"H+35%"); plot4(HH,"고점"); plot5(LL+value*0.65,"H-35%"); plot6(HH-Value*0.50,"H-50%"); plot7(LL+Value*0.35,"H-65%"); plot8(LL,"저점"); plot9(LL-Value*0.50,"L-50%"); plot10(LL-Value*1.00,"L-100%"); Text_Delete(Tx1); Text_Delete(Tx2); Text_Delete(Tx3); Text_Delete(Tx4); Text_Delete(Tx5); Text_Delete(Tx6); Text_Delete(Tx7); Text_Delete(Tx8); tx1 = Text_New(sdate,stime,HH+value*1.00,"+100%: " + NumToStr(HH+value*1.00,2)); tx2 = Text_New(sdate,stime,HH+value*0.50,"+50%: " + NumToStr(HH+value*0.50,2)); #tx3 = Text_New(sdate,stime,HH+value*0.35,"+35%: " + NumToStr(HH+value*0.35,2)); #tx4 = Text_New(sdate,stime,LL+value*0.65,"-35%: " + NumToStr(LL+value*0.65,2)); tx5 = Text_New(sdate,stime,HH-Value*0.50,"-50%: " + NumToStr(HH-Value*0.50,2)); #tx6 = Text_New(sdate,stime,LL+Value*0.35,"-65%: " + NumToStr(LL+Value*0.35,2)); tx7 = Text_New(sdate,stime,LL-Value*0.50,"L-50%: " + NumToStr(LL-Value*0.50,2)); tx8 = Text_New(sdate,stime,LL-Value*1.00,"L-100%: " + NumToStr(LL-Value*1.00,2));
프로필 이미지

예스스탁 예스스탁 답변

2017-10-23 13:38:27

안녕하세요 예스스탁입니다. 1. if CrossDown(c,dayopen-PriceScale*70) Then Buy(); if CrossUp(c,dayopen+PriceScale*70) Then sell(); if CrossUp(c,dayopen+PriceScale*50) Then Buy(); if CrossDown(c,dayopen-PriceScale*50) Then sell(); 2 문의하신 내용을 이하해지 못했습니다. 올리신 식이 이번주의 최저가와 최고가를 기준으로 합니다. 주가 변경되면 수치도 같이 변경이 됩니다. 3 사용자분이 직접 수식의 문장을 제거하셔야 합니다. 자동으로 가능하지 않습니다. 삭제하는 라인에 해당하는 Text_New문장을 지우시면 됩니다. 즐거운 하루되세요 > 베비슬립 님이 쓴 글입니다. > 제목 : Re : Re : 질문드립니다 > 너무 친절한답변에 감사드립니다.. 미리감사드리며 혼자 공부하려는 노력없이 질문만 하는것처럼 보일까봐 죄송스럽습니다 ㅠㅠ 스스로 공부하며 배워나가도록 노력하겠습니다.. 오늘도 기분좋게 한주마무리하시길바라며 질문1. 시가 - 70틱 이상의 변동폭일때 지지선에서 매수 시가 + 70틱 이상의 변동폭일때 저항선에서 매도 시가 + 50 틱 이하의 변동폭일때 저항선 돌파시 매수 시가 - 50 틱 이하의 변동폭일때 지지선 돌파시 매도 질문2 여기서본 지표인데 한주가바뀌면 주단위로 수치도 같이 바뀌었으면좋겠습니다! var : cnt(0); Array : WH[10](0),WL[10](0); if DayOfWeek(Bdate) < DayOfWeek(Bdate[1]) Then{ WH[0] = H; WL[0] = L; for cnt = 1 to 9{ WH[cnt] = WH[cnt-1][1]; WL[cnt] = WL[cnt-1][1]; } } if H > WH[0] Then WH[0] = H; if L < WL[0] Then WL[0] = L; input : 텍스트소수점자리수(5); var : TL1(0),TL2(0),TL3(0),TL4(0); var : TL5(0),TL6(0),TL7(0),TL8(0); var : Tx1(0),Tx2(0),Tx3(0),Tx4(0); var : Tx5(0),Tx6(0),Tx7(0),Tx8(0); var : Tx11(0),Tx12(0),Tx13(0),Tx14(0); var : Tx15(0),Tx16(0),Tx17(0),Tx18(0); if L == WL[0] Then{ TL_Delete(TL2); TL_Delete(TL3); TL_Delete(TL4); TL2 = TL_New(sdate[1],stime[1],WL[0]+PriceScale*65,sdate,stime,WL[0]+PriceScale*65); TL3 = TL_New(sdate[1],stime[1],WL[0]+PriceScale*135,sdate,stime,WL[0]+PriceScale*135); TL4 = TL_New(sdate[1],stime[1],WL[0]+PriceScale*120,sdate,stime,WL[0]+PriceScale*120); TL_SetExtRight(TL2,true); TL_SetExtLeft(TL2,true); TL_SetExtRight(TL3,true); TL_SetExtLeft(TL3,true); TL_SetExtRight(TL4,true); TL_SetExtLeft(TL4,true); TL_SetColor(TL2,RED); TL_SetColor(TL3,RED); TL_SetColor(TL4,RED); TL_SetSize(TL2,0); TL_SetSize(TL3,0); TL_SetSize(TL4,0); } if H == WH[0] Then{ TL_Delete(TL6); TL_Delete(TL7); TL_Delete(TL8); TL6 = TL_New(sdate[1],stime[1],WH[0]-PriceScale*65,sdate,stime,WH[0]-PriceScale*65); TL7 = TL_New(sdate[1],stime[1],WH[0]-PriceScale*135,sdate,stime,WH[0]-PriceScale*135); TL8 = TL_New(sdate[1],stime[1],WH[0]-PriceScale*120,sdate,stime,WH[0]-PriceScale*120); TL_SetExtRight(TL6,true); TL_SetExtLeft(TL6,true); TL_SetExtRight(TL7,true); TL_SetExtLeft(TL7,true); TL_SetExtRight(TL8,true); TL_SetExtLeft(TL8,true); TL_SetColor(TL6,BLUE); TL_SetColor(TL7,BLUE); TL_SetColor(TL8,BLUE); TL_SetSize(TL6,0); TL_SetSize(TL7,0); TL_SetSize(TL8,0); } Text_Delete(Tx2); Text_Delete(Tx3); Text_Delete(Tx4); tx2 = Text_New(sdate,stime,WL[0]+PriceScale*65,"주중최저+65틱("+NumToStr(WL[0]+PriceScale*65,텍스트소수점자리수)+")"); tx3 = Text_New(sdate,stime,WL[0]+PriceScale*135,"주중최저+135틱("+NumToStr(WL[0]+PriceScale*135,텍스트소수점자리수)+")"); tx4 = Text_New(sdate,stime,WL[0]+PriceScale*120,"주중최저+120틱("+NumToStr(WL[0]+PriceScale*120,텍스트소수점자리수)+")"); Text_SetColor(tx2,red); Text_SetColor(tx3,red); Text_SetColor(tx4,red); text_setStyle(tx2,2,1); text_setStyle(tx3,2,1); text_setStyle(tx4,2,1); Text_Delete(Tx12); Text_Delete(Tx13); Text_Delete(Tx14); tx12 = Text_New(sdate,stime,WH[0]-PriceScale*65,"주중최고-65틱("+NumToStr(WH[0]-PriceScale*65,텍스트소수점자리수)+")"); tx13 = Text_New(sdate,stime,WH[0]-PriceScale*135,"주중최고-135틱("+NumToStr(WH[0]-PriceScale*135,텍스트소수점자리수)+")"); tx14 = Text_New(sdate,stime,WH[0]-PriceScale*120,"주중최고-120틱("+NumToStr(WH[0]-PriceScale*120,텍스트소수점자리수)+")"); Text_SetColor(tx12,blue); Text_SetColor(tx13,blue); Text_SetColor(tx14,blue); text_setStyle(tx12,1,1); text_setStyle(tx13,1,1); text_setStyle(tx14,1,1); 질문3 이식에서 라인을 없애도 텍스트박스는 안없어지는데 같이사라지게할수있을까요? input : HH(35),LL(30); var : value(0),Tx1(0),Tx2(0),Tx3(0),Tx4(0),Tx5(0),tx6(0),tx7(0),tx8(0); value = HH-LL; Plot1(HH+value*1.00,"H+100%",dayindex()+1); plot2(HH+value*0.50,"H+50%"); plot3(HH+value*0.35,"H+35%"); plot4(HH,"고점"); plot5(LL+value*0.65,"H-35%"); plot6(HH-Value*0.50,"H-50%"); plot7(LL+Value*0.35,"H-65%"); plot8(LL,"저점"); plot9(LL-Value*0.50,"L-50%"); plot10(LL-Value*1.00,"L-100%"); Text_Delete(Tx1); Text_Delete(Tx2); Text_Delete(Tx3); Text_Delete(Tx4); Text_Delete(Tx5); Text_Delete(Tx6); Text_Delete(Tx7); Text_Delete(Tx8); tx1 = Text_New(sdate,stime,HH+value*1.00,"+100%: " + NumToStr(HH+value*1.00,2)); tx2 = Text_New(sdate,stime,HH+value*0.50,"+50%: " + NumToStr(HH+value*0.50,2)); #tx3 = Text_New(sdate,stime,HH+value*0.35,"+35%: " + NumToStr(HH+value*0.35,2)); #tx4 = Text_New(sdate,stime,LL+value*0.65,"-35%: " + NumToStr(LL+value*0.65,2)); tx5 = Text_New(sdate,stime,HH-Value*0.50,"-50%: " + NumToStr(HH-Value*0.50,2)); #tx6 = Text_New(sdate,stime,LL+Value*0.35,"-65%: " + NumToStr(LL+Value*0.35,2)); tx7 = Text_New(sdate,stime,LL-Value*0.50,"L-50%: " + NumToStr(LL-Value*0.50,2)); tx8 = Text_New(sdate,stime,LL-Value*1.00,"L-100%: " + NumToStr(LL-Value*1.00,2));