커뮤니티

문의

프로필 이미지
타이밍승부사
2016-02-25 14:45:01
128
글번호 95797
답변완료
답변 감사드려요. 수식 초보라 도움 많이 받고 있습니다. 예를 들면 오늘 선물 기준으로 장시작해서 저점이 235.90이었고 고점이 237.65였는데 저점 대비 35틱 상승한 완성봉 기준으로 바꿔서 해 보니까 신호가 안 나오고 34,33,32,31도 신호 안 나오고 30틱으로 변경하니 신호가 나오는데 왜 이런거죠? 저점에서 고점까지 35틱 상승했는데 이상해서요... 오늘 제 의도가 만약 35틱 상승을 기준으로 했을 때 35틱 상승 완성봉의 고점을 기준으로 5틱 근접시 진입되는걸 원했거든요.근데 신호가 안 나오고 30틱을 기준으로 바꾸니 신호가 나오네요. 웬만하면 답변주신 수식내에서 수정해 볼려는데 너무 복잡해서 어렵네요ㅠ.ㅠ 그래서 약간 수정하여 다시 문의드립니다. 매도 신호 하나만 다시 부탁드릴게요. 당일 저점 대비 50틱 이상 상승완성한 5분봉 고가기준(이전 종가기준에서 변경)으로 그 다음봉이 이전봉의 고가 오차범위 5~10틱 근접시 매도해서 당일 고점 대비 70틱 상승시 손절하고 수익실현은 진입 가격 기준 50틱 청산하는 매도 시스템 하루에 한 번만 매매하는 조건이며 장마감시까지 50틱 수익 실현 안되면 종가청산하는 방식으로 모든 틱수는 수정가능하도록 부탁드립니다. 오차범위가 5~10틱은 안되는건가요? 5틱이면 5틱 10틱이면 10틱 꼭 이래야된다면 5틱으로 해 주시면 감사하겠습니다.
시스템
답변 5
프로필 이미지

예스스탁 예스스탁 답변

2016-02-25 19:20:32

안녕하세요 예스스탁입니다. 작성된 식이 종가기준으로 되어 있습니다. 고저가 기준으로 변경해 드립니다 오차범위는 특정값을 기준으로 +- 폭안에 포함된다는 내용입니다. 2가지이면 어떤 의미를 가지는 알수가 없어 처리를 못해드린것 입니다. 가령 당일고가대비 30틱이상 하락한봉의 저가대비 5틱이상 더 낮고 10틱은 벗어나지 않거나 이런 내용이 필요합니다. 단순 5~10이면 어떤 의미인지 알수가 없습니다. input : 등락틱(30),오차범위(5),손절틱수(70),익절틱수(50); var : T(0); if bdate != bdate[1] then{ T = 0; } if T == 0 and L <= dayhigh-PriceScale*등락틱 Then{ T = 1; var1 = L; if NextBarOpen <= var1+PriceScale*오차범위 and NextBarOpen >= var1-PriceScale*오차범위 Then buy("b1",AtMarket); if NextBarOpen > var1+PriceScale*오차범위 Then buy("b2",Atlimit,var1+PriceScale*오차범위); if NextBarOpen < var1-PriceScale*오차범위 Then buy("b3",AtStop,var1-PriceScale*오차범위); } if T == 0 and H >= daylow+PriceScale*등락틱 Then{ T = -1; var2 = H; if NextBarOpen <= var2+PriceScale*오차범위 and NextBarOpen >= var2-PriceScale*오차범위 Then sell("s1",AtMarket); if NextBarOpen > var2+PriceScale*오차범위 Then sell("s2",AtStop,var2+PriceScale*오차범위); if NextBarOpen < var2-PriceScale*오차범위 Then sell("s3",AtLimit,var2-PriceScale*오차범위); } if MarketPosition == 1 Then exitlong("bx",AtStop,daylow[BarsSinceEntry]-PriceScale*손절틱수); if MarketPosition == -1 Then ExitShort("sx",AtStop,DayHigh[BarsSinceEntry]+PriceScale*손절틱수); SetStopProfittarget(PriceScale*익절틱수,PointStop); SetStopEndofday(150000); 즐거운 하루되세요 > 타이밍승부사 님이 쓴 글입니다. > 제목 : 문의 > 답변 감사드려요. 수식 초보라 도움 많이 받고 있습니다. 예를 들면 오늘 선물 기준으로 장시작해서 저점이 235.90이었고 고점이 237.65였는데 저점 대비 35틱 상승한 완성봉 기준으로 바꿔서 해 보니까 신호가 안 나오고 34,33,32,31도 신호 안 나오고 30틱으로 변경하니 신호가 나오는데 왜 이런거죠? 저점에서 고점까지 35틱 상승했는데 이상해서요... 오늘 제 의도가 만약 35틱 상승을 기준으로 했을 때 35틱 상승 완성봉의 고점을 기준으로 5틱 근접시 진입되는걸 원했거든요.근데 신호가 안 나오고 30틱을 기준으로 바꾸니 신호가 나오네요. 웬만하면 답변주신 수식내에서 수정해 볼려는데 너무 복잡해서 어렵네요ㅠ.ㅠ 그래서 약간 수정하여 다시 문의드립니다. 매도 신호 하나만 다시 부탁드릴게요. 당일 저점 대비 50틱 이상 상승완성한 5분봉 고가기준(이전 종가기준에서 변경)으로 그 다음봉이 이전봉의 고가 오차범위 5~10틱 근접시 매도해서 당일 고점 대비 70틱 상승시 손절하고 수익실현은 진입 가격 기준 50틱 청산하는 매도 시스템 하루에 한 번만 매매하는 조건이며 장마감시까지 50틱 수익 실현 안되면 종가청산하는 방식으로 모든 틱수는 수정가능하도록 부탁드립니다. 오차범위가 5~10틱은 안되는건가요? 5틱이면 5틱 10틱이면 10틱 꼭 이래야된다면 5틱으로 해 주시면 감사하겠습니다.
프로필 이미지

타이밍승부사

2016-02-26 08:57:35

너무너무 감사드립니다^^ 약간의 의문점이 있어 재문의 드립니다. ① 조건완성봉 바로 다음봉에서 오차범위내에 안 오면 진입이 안 되는건가요? 아니면 이후에 다른봉에서도 오차범위내에 오면 진입이 되는건가요? 꼭 그 다음봉이 아니라도 그 자리가 오면 진입이 되었으면 하는데 가능한건지... ② 조건완성봉 고점대비 위아래 모두 오차범위에서 진입이 되는건지도 궁금합니다. 이것도 가능했으면 해서요. 조건완성봉 다음봉에서 조건완성봉 고점보다 더 높은 가격에 시작할 수 있는데 높더라해도 오차범위내이면 진입이 되었으면 합니다. ③ 시스템 성능 보고서를 보고 테스트를 해 보면 손절에 대한 내용이 없어서 손절 기능이 제대로 작동하는게 맞는건지 확인이 안되네요. 분명 진입 후 손절돼야 상황인데 그런 기록은 없고 수익으로 기록되어있어서요. > 예스스탁 님이 쓴 글입니다. > 제목 : Re : 문의 > 안녕하세요 예스스탁입니다. 작성된 식이 종가기준으로 되어 있습니다. 고저가 기준으로 변경해 드립니다 오차범위는 특정값을 기준으로 +- 폭안에 포함된다는 내용입니다. 2가지이면 어떤 의미를 가지는 알수가 없어 처리를 못해드린것 입니다. 가령 당일고가대비 30틱이상 하락한봉의 저가대비 5틱이상 더 낮고 10틱은 벗어나지 않거나 이런 내용이 필요합니다. 단순 5~10이면 어떤 의미인지 알수가 없습니다. input : 등락틱(30),오차범위(5),손절틱수(70),익절틱수(50); var : T(0); if bdate != bdate[1] then{ T = 0; } if T == 0 and L <= dayhigh-PriceScale*등락틱 Then{ T = 1; var1 = L; if NextBarOpen <= var1+PriceScale*오차범위 and NextBarOpen >= var1-PriceScale*오차범위 Then buy("b1",AtMarket); if NextBarOpen > var1+PriceScale*오차범위 Then buy("b2",Atlimit,var1+PriceScale*오차범위); if NextBarOpen < var1-PriceScale*오차범위 Then buy("b3",AtStop,var1-PriceScale*오차범위); } if T == 0 and H >= daylow+PriceScale*등락틱 Then{ T = -1; var2 = H; if NextBarOpen <= var2+PriceScale*오차범위 and NextBarOpen >= var2-PriceScale*오차범위 Then sell("s1",AtMarket); if NextBarOpen > var2+PriceScale*오차범위 Then sell("s2",AtStop,var2+PriceScale*오차범위); if NextBarOpen < var2-PriceScale*오차범위 Then sell("s3",AtLimit,var2-PriceScale*오차범위); } if MarketPosition == 1 Then exitlong("bx",AtStop,daylow[BarsSinceEntry]-PriceScale*손절틱수); if MarketPosition == -1 Then ExitShort("sx",AtStop,DayHigh[BarsSinceEntry]+PriceScale*손절틱수); SetStopProfittarget(PriceScale*익절틱수,PointStop); SetStopEndofday(150000); 즐거운 하루되세요 > 타이밍승부사 님이 쓴 글입니다. > 제목 : 문의 > 답변 감사드려요. 수식 초보라 도움 많이 받고 있습니다. 예를 들면 오늘 선물 기준으로 장시작해서 저점이 235.90이었고 고점이 237.65였는데 저점 대비 35틱 상승한 완성봉 기준으로 바꿔서 해 보니까 신호가 안 나오고 34,33,32,31도 신호 안 나오고 30틱으로 변경하니 신호가 나오는데 왜 이런거죠? 저점에서 고점까지 35틱 상승했는데 이상해서요... 오늘 제 의도가 만약 35틱 상승을 기준으로 했을 때 35틱 상승 완성봉의 고점을 기준으로 5틱 근접시 진입되는걸 원했거든요.근데 신호가 안 나오고 30틱을 기준으로 바꾸니 신호가 나오네요. 웬만하면 답변주신 수식내에서 수정해 볼려는데 너무 복잡해서 어렵네요ㅠ.ㅠ 그래서 약간 수정하여 다시 문의드립니다. 매도 신호 하나만 다시 부탁드릴게요. 당일 저점 대비 50틱 이상 상승완성한 5분봉 고가기준(이전 종가기준에서 변경)으로 그 다음봉이 이전봉의 고가 오차범위 5~10틱 근접시 매도해서 당일 고점 대비 70틱 상승시 손절하고 수익실현은 진입 가격 기준 50틱 청산하는 매도 시스템 하루에 한 번만 매매하는 조건이며 장마감시까지 50틱 수익 실현 안되면 종가청산하는 방식으로 모든 틱수는 수정가능하도록 부탁드립니다. 오차범위가 5~10틱은 안되는건가요? 5틱이면 5틱 10틱이면 10틱 꼭 이래야된다면 5틱으로 해 주시면 감사하겠습니다.
프로필 이미지

예스스탁 예스스탁 답변

2016-02-26 11:38:47

안녕하세요 예스스탁입니다. 1 현재 바로 다음봉만 감시합니다. 아래와 같이 작성하시면 다음봉이 아닌 당일 다른봉에도 가격 만족하면 진입합니다. input : 등락틱(30),오차범위(5),손절틱수(70),익절틱수(50); var : T(0),TT(0),T1(0),entry(0); TT = TotalTrades; if bdate != bdate[1] then{ T = 0; T1 = TT; } if MarketPosition == 0 Then entry = TT-T1; Else entry = TT-T1+1; if T == 0 and L <= dayhigh-PriceScale*등락틱 Then{ T = 1; var1 = L; } if T == 1 and entry < 1 Then{ if NextBarOpen <= var1+PriceScale*오차범위 and NextBarOpen >= var1-PriceScale*오차범위 Then buy("b1",AtMarket); if NextBarOpen > var1+PriceScale*오차범위 Then buy("b2",Atlimit,var1+PriceScale*오차범위); if NextBarOpen < var1-PriceScale*오차범위 Then buy("b3",AtStop,var1-PriceScale*오차범위); } if T == 0 and H >= daylow+PriceScale*등락틱 Then{ T = -1; var2 = H; } if T == -1 and entry < 1 Then{ if NextBarOpen <= var2+PriceScale*오차범위 and NextBarOpen >= var2-PriceScale*오차범위 Then sell("s1",AtMarket); if NextBarOpen > var2+PriceScale*오차범위 Then sell("s2",AtStop,var2+PriceScale*오차범위); if NextBarOpen < var2-PriceScale*오차범위 Then sell("s3",AtLimit,var2-PriceScale*오차범위); } if MarketPosition == 1 Then exitlong("bx",AtStop,daylow[BarsSinceEntry]-PriceScale*손절틱수); if MarketPosition == -1 Then ExitShort("sx",AtStop,DayHigh[BarsSinceEntry]+PriceScale*손절틱수); SetStopProfittarget(PriceScale*익절틱수,PointStop); SetStopEndofday(150000); 2 현재 위아래로 모두 감시하게 작성되어 있습니다. 3 식상 Bx,Sx가 손절입니다. 리포트에도 해당 이름으로 표시됩니다. 매수는 진입시점의 당일저점대비 지정한 틱수만큼 하락하면 청산 매도는 진입시점의 당일고점대비 지정한 틱수만큼 상승하면 청산합니다. 즐거운 하루되세요 > 타이밍승부사 님이 쓴 글입니다. > 제목 : Re : Re : 문의 > 너무너무 감사드립니다^^ 약간의 의문점이 있어 재문의 드립니다. ① 조건완성봉 바로 다음봉에서 오차범위내에 안 오면 진입이 안 되는건가요? 아니면 이후에 다른봉에서도 오차범위내에 오면 진입이 되는건가요? 꼭 그 다음봉이 아니라도 그 자리가 오면 진입이 되었으면 하는데 가능한건지... ② 조건완성봉 고점대비 위아래 모두 오차범위에서 진입이 되는건지도 궁금합니다. 이것도 가능했으면 해서요. 조건완성봉 다음봉에서 조건완성봉 고점보다 더 높은 가격에 시작할 수 있는데 높더라해도 오차범위내이면 진입이 되었으면 합니다. ③ 시스템 성능 보고서를 보고 테스트를 해 보면 손절에 대한 내용이 없어서 손절 기능이 제대로 작동하는게 맞는건지 확인이 안되네요. 분명 진입 후 손절돼야 상황인데 그런 기록은 없고 수익으로 기록되어있어서요. > 예스스탁 님이 쓴 글입니다. > 제목 : Re : 문의 > 안녕하세요 예스스탁입니다. 작성된 식이 종가기준으로 되어 있습니다. 고저가 기준으로 변경해 드립니다 오차범위는 특정값을 기준으로 +- 폭안에 포함된다는 내용입니다. 2가지이면 어떤 의미를 가지는 알수가 없어 처리를 못해드린것 입니다. 가령 당일고가대비 30틱이상 하락한봉의 저가대비 5틱이상 더 낮고 10틱은 벗어나지 않거나 이런 내용이 필요합니다. 단순 5~10이면 어떤 의미인지 알수가 없습니다. input : 등락틱(30),오차범위(5),손절틱수(70),익절틱수(50); var : T(0); if bdate != bdate[1] then{ T = 0; } if T == 0 and L <= dayhigh-PriceScale*등락틱 Then{ T = 1; var1 = L; if NextBarOpen <= var1+PriceScale*오차범위 and NextBarOpen >= var1-PriceScale*오차범위 Then buy("b1",AtMarket); if NextBarOpen > var1+PriceScale*오차범위 Then buy("b2",Atlimit,var1+PriceScale*오차범위); if NextBarOpen < var1-PriceScale*오차범위 Then buy("b3",AtStop,var1-PriceScale*오차범위); } if T == 0 and H >= daylow+PriceScale*등락틱 Then{ T = -1; var2 = H; if NextBarOpen <= var2+PriceScale*오차범위 and NextBarOpen >= var2-PriceScale*오차범위 Then sell("s1",AtMarket); if NextBarOpen > var2+PriceScale*오차범위 Then sell("s2",AtStop,var2+PriceScale*오차범위); if NextBarOpen < var2-PriceScale*오차범위 Then sell("s3",AtLimit,var2-PriceScale*오차범위); } if MarketPosition == 1 Then exitlong("bx",AtStop,daylow[BarsSinceEntry]-PriceScale*손절틱수); if MarketPosition == -1 Then ExitShort("sx",AtStop,DayHigh[BarsSinceEntry]+PriceScale*손절틱수); SetStopProfittarget(PriceScale*익절틱수,PointStop); SetStopEndofday(150000); 즐거운 하루되세요 > 타이밍승부사 님이 쓴 글입니다. > 제목 : 문의 > 답변 감사드려요. 수식 초보라 도움 많이 받고 있습니다. 예를 들면 오늘 선물 기준으로 장시작해서 저점이 235.90이었고 고점이 237.65였는데 저점 대비 35틱 상승한 완성봉 기준으로 바꿔서 해 보니까 신호가 안 나오고 34,33,32,31도 신호 안 나오고 30틱으로 변경하니 신호가 나오는데 왜 이런거죠? 저점에서 고점까지 35틱 상승했는데 이상해서요... 오늘 제 의도가 만약 35틱 상승을 기준으로 했을 때 35틱 상승 완성봉의 고점을 기준으로 5틱 근접시 진입되는걸 원했거든요.근데 신호가 안 나오고 30틱을 기준으로 바꾸니 신호가 나오네요. 웬만하면 답변주신 수식내에서 수정해 볼려는데 너무 복잡해서 어렵네요ㅠ.ㅠ 그래서 약간 수정하여 다시 문의드립니다. 매도 신호 하나만 다시 부탁드릴게요. 당일 저점 대비 50틱 이상 상승완성한 5분봉 고가기준(이전 종가기준에서 변경)으로 그 다음봉이 이전봉의 고가 오차범위 5~10틱 근접시 매도해서 당일 고점 대비 70틱 상승시 손절하고 수익실현은 진입 가격 기준 50틱 청산하는 매도 시스템 하루에 한 번만 매매하는 조건이며 장마감시까지 50틱 수익 실현 안되면 종가청산하는 방식으로 모든 틱수는 수정가능하도록 부탁드립니다. 오차범위가 5~10틱은 안되는건가요? 5틱이면 5틱 10틱이면 10틱 꼭 이래야된다면 5틱으로 해 주시면 감사하겠습니다.
프로필 이미지

타이밍승부사

2016-02-26 16:13:10

아무래도 이상해서 그런데 그럼 이 신호는 시스템 성능 보고서에는 손절이 안 나타나지만 실제 매매시에는 손절은 되는건가요? 제가 가지고 있는 다른 신호는 손절되면 시스템 성능보고서에 종가청산 아닌 매도청산(손절매)-stoploss라는 내역이 있어서 참고가 되는데 만들어주신 신호에는 손절이 되어야되는데도 손절내역은 없고 전부 종가청산밖에 안 나타나더라구요~~ 만들어주신 로직에는 손절에 관한 내용이 있기는 있는데 성능보고서에는 안 나타나니 지금은 모의로 검증중인데 실제로 시스템 돌렸을때 손절이 안 나가면 큰일이잖아요. 한번 확인 부탁드립니다.
프로필 이미지

예스스탁 예스스탁 답변

2016-02-26 19:47:14

안녕하세요 예스스탁입니다. 조건내용을 살펴보시기 바랍니다. 요청하신 손절내용은 아래와 같습니다. 매수후 당일 저점 대비 70틱 하락시 손절 매도후 당일 고점 대비 70틱 상승시 손절 작성된 식은 아래와 같습니다. 매수시점의 당일저가에서 70틱 하락하면 청산 매도시점의 당일고가에서 70틱 상승하면 청산되게 작성이 되어 있습니다. if MarketPosition == 1 Then exitlong("bx",AtStop,daylow[BarsSinceEntry]-PriceScale*손절틱수); if MarketPosition == -1 Then ExitShort("sx",AtStop,DayHigh[BarsSinceEntry]+PriceScale*손절틱수); 위 내용으로 청산이 나오지 않는것은 손절조건에 도달하지 못했기 때문입니다. 70틱이면 선물에서 3.5포인트입니다. 진입시 당일저가/고가에서 다시 3.5포인트가 더 움직이면 청산이므로 해당 차트에기간에 이렇게 많이 움직인 날이 없다는 의미입니다. 첨부된 그림은 손절틱수를 20으로 저절해서 적용한 리포트입니다. sx와 bx신호 확인하실수 있습니다. 손절틱수를 조절해 보시기 바랍니다. setstoploss는 진입가격으로 기준으로 청산할&#46468; 사용할수 있습니다. 문의하신 내용은 진입가격이 기준이 아니므로 해당 함수를 사용할수 없습니다. 단순 진입가격 대비 70틱 손절이면 아래식 이용하시면 됩니다. input : 등락틱(30),오차범위(5),손절틱수(70),익절틱수(50); var : T(0),TT(0),T1(0),entry(0); TT = TotalTrades; if bdate != bdate[1] then{ T = 0; T1 = TT; } if MarketPosition == 0 Then entry = TT-T1; Else entry = TT-T1+1; if T == 0 and L <= dayhigh-PriceScale*등락틱 Then{ T = 1; var1 = L; } if T == 1 and entry < 1 Then{ if NextBarOpen <= var1+PriceScale*오차범위 and NextBarOpen >= var1-PriceScale*오차범위 Then buy("b1",AtMarket); if NextBarOpen > var1+PriceScale*오차범위 Then buy("b2",Atlimit,var1+PriceScale*오차범위); if NextBarOpen < var1-PriceScale*오차범위 Then buy("b3",AtStop,var1-PriceScale*오차범위); } if T == 0 and H >= daylow+PriceScale*등락틱 Then{ T = -1; var2 = H; } if T == -1 and entry < 1 Then{ if NextBarOpen <= var2+PriceScale*오차범위 and NextBarOpen >= var2-PriceScale*오차범위 Then sell("s1",AtMarket); if NextBarOpen > var2+PriceScale*오차범위 Then sell("s2",AtStop,var2+PriceScale*오차범위); if NextBarOpen < var2-PriceScale*오차범위 Then sell("s3",AtLimit,var2-PriceScale*오차범위); } SetStopLoss(PriceScale*손절틱수,PointStop); SetStopProfittarget(PriceScale*익절틱수,PointStop); SetStopEndofday(150000); 즐거운 하루되세요 > 타이밍승부사 님이 쓴 글입니다. > 제목 : Re : Re : Re : Re : 문의 > 아무래도 이상해서 그런데 그럼 이 신호는 시스템 성능 보고서에는 손절이 안 나타나지만 실제 매매시에는 손절은 되는건가요? 제가 가지고 있는 다른 신호는 손절되면 시스템 성능보고서에 종가청산 아닌 매도청산(손절매)-stoploss라는 내역이 있어서 참고가 되는데 만들어주신 신호에는 손절이 되어야되는데도 손절내역은 없고 전부 종가청산밖에 안 나타나더라구요~~ 만들어주신 로직에는 손절에 관한 내용이 있기는 있는데 성능보고서에는 안 나타나니 지금은 모의로 검증중인데 실제로 시스템 돌렸을때 손절이 안 나가면 큰일이잖아요. 한번 확인 부탁드립니다.