커뮤니티

수식작성 부탁드립니다. ㅋ

프로필 이미지
오벨
2010-10-18 11:52:17
970
글번호 32892
답변완료
식은 첨부해놨습니다. 현재 식인데요 1.첫번째 문의입니당. 제가 지금 만들고 싶은식은 현재 보시면 아시겠지만, value6 상향하면 매수들어가고, 그에 변동성에따라 또 매수가 이루어지는 방식입니다. 손절은 4가지중 하나라도 만족하면 매도가 되구요. 제가 만들고싶은식은 떨어졌을때도 또 매수가 가능한가 하는겁니다. ex) 예를 들어 value6을 상향하여 한틱 상승 매수를 하였다 칩니다. 그런데 제가 또 식을 넣습니다. value8로요. 이 value8을 하향하게 되면 또한 매수가 들어가게 됩니다. 하지만 value7을 하향하면 당연히 매도가 되겠지요. value8을 하향했을때 매수가 들어가면 총 2번의 매수가 이루어졌습니다. 그런데 여기서 value6에서의 변동성청산 조건을 만족하게 되면 value8에서 매수한 것 까지 전부 매도가 되게끔말입니다. (important) 여기서 중요한건, value6가격에서 매수를 했고, 주가가떨어져서 value8에서의 다시 매수를 했습니다. 그런데 다시 주가가 올랐을때 value6+value1가격에서 다시 피라미딩이 이루어지게 하고싶습니당. value8+value1이 아니라요. 그리고 value8하향했을때 매수가 이루어졌고 다시 어느정도 주가가 오르다가 또 떨어져 value8을 또 하향하게 되면 매수를 하지않게 하고싶은데요. 그러니까 value8을 하향했을때의 매수는 단한번만 매수를 하는 것이지요. 결론적으로 value6에서 매수를 했고, 가격이 떨어졌을때 value8에서 다시 매수를 할수있구요. 총 청산은 언제나 처럼 value6-value1*3에서 청산이 이루어지는데 이때 value8에서 매수한것도 모두 청산이 되어야한다는 겁니다. 일어날수있는 두번째 경우는 value6에서 매수를했고, 다시 떨어져 value8에서 매수를 했구요. 그런데 가격이 올라 value6+value1에서 다시 매수를 하게 되는겁니다. 뭐 value1 = value3이겠죠. value8+value1이 아닌 value6+value1에서 다음 피라미드가 이루어지도록말입니당. 2. 두번째 문의사항은요 제 식을 보시면 아시겠지만, value6에서 한틱이탈하면 매수를 하게 되어있습니다. 제가 궁금한게 실제적으로 이게 어떻게 이루어지는지를 알수가 없네요. 무슨말이냐면. 제 식의 손실청산이 총 4개인데요. 그게 각각 가격대가 어디인지를 알고싶습니다. 그런데 이게 시스템식에 넣을수있나요? 지표식으로 해야되는거 같은데.. 음 가로선을 리구요 그 옆에 가격과 어떤청산인지가 적혀있도록 식을 짤수잇을까요?
시스템
답변 1
프로필 이미지

예스스탁 예스스탁 답변

2010-10-19 10:54:12

안녕하세요 예스스탁입니다. 기존의 식이 순차적으로 진입되는 내용이라 추가하는 내용과 복합될 수가 있어 구분했습니다. input : 총투자금(4500000), period1(20); var : L15(0),cnt(0),sum(0),count(0); sum = 0; for count = 1 to Period1{ sum = sum + max(abs(dayclose(count+1)-DayHigh(count)),abs(Dayclose(count+1)-DayLow(count)),abs(dayhigh(count)-daylow(count))); } value1 = sum/period1; #일간 20 ATR value2 = int(((총투자금*0.01)/(value1*3))/10)*10; value6 = 35100; #박스권상단 value7 = 32800; #박스권귀속 #전일 기준 15일 최저가 L15 = DayLow(1); for cnt = 1 to 15{ if DayLow(cnt) < L15 Then L15 = DayLow(cnt); } if MarketPosition == 0 and stime < 150000 and sdate >= 20100825 and ExitDate(1) != sdate Then{ if H <= value6 Then# 매수가격대 돌파시 매수. buy("박스권이탈매수",AtStop,value6+PriceScale,value2); } #진입이 있을 때마다 value3에 value1저장 value4에 해당봉 고가저장 if MarketPosition == 1 and CurrentEntries > CurrentEntries[1] Then{ value3 = value1; value4 = H; } if MarketPosition == 1 and ExitDate(1) != sdate and countif(L < value8,BarsSinceEntry) < 1 Then{ if CurrentEntries == 1 Then{ buy("피라미딩2",AtStop,H[BarsSinceEntry]+value3+PriceScale,value2); } if CurrentEntries == 2 Then{ buy("피라미딩3",AtStop,value4+value3+PriceScale,value2); } if CurrentEntries == 3 Then{ buy("마지막피라미딩",AtStop,value4+value3+PriceScale,value2); } } if MarketPosition == 1 and ExitDate(1) != sdate then{ #진입이후에 한번만 value8을 하향하면 진입 if CurrentEntries == 1 and countif(L < value8,BarsSinceEntry) < 1 Then buy("b1",atlimit,value8,value2); #저가가 value8을 하향한적이 있을 경우(즉 b1이 진입한적이 있고),value6+value1을 상향하면 매수 if CurrentEntries == 2 and countif(L <= value8,BarsSinceEntry) >= 1 and H < value6+value1 Then buy("b2",atlimit,value6+value1,value2); } if MarketPosition == 1 Then{ if L >= L15-PriceScale Then# 부등호가 반대이어야 L7-PriceScale 위에 있다가 내려가면 청산입니다. exitlong("신저가",AtStop,L15-PriceScale); if L >= value4-value3*3 then # value4-value3*3 위에 있다가 내려가면 청산입니다. exitlong("변동성",AtStop,value4-value3*3); if L >= value6-value3*3 Then exitlong("손실청산",atstop,value6-value3*3); #박스권하향하면 청산. if L >= value7 Then exitlong("박스권귀속",atstop,value7-pricescale); #박스권하향하면 청산. if L >= value6-value1*3 Then # value6-value1*3하향시 청산 exitlong("xxx",atstop,value6-value1*3); } 2. 각 청산이 진입에서 발생되는 값을 이용해야 하는데 시스템식에서는 지표를 그릴수 없고 지표식에서는 포지션관련 함수를 사용할 수 없어 시스템식에서 발생되는 값은 지표로 옮기실수 없습니다. 즐거운 하루되세요 즐거운 하루되세요 > 오벨 님이 쓴 글입니다. > 제목 : 수식작성 부탁드립니다. ㅋ > 식은 첨부해놨습니다. 현재 식인데요 1.첫번째 문의입니당. 제가 지금 만들고 싶은식은 현재 보시면 아시겠지만, value6 상향하면 매수들어가고, 그에 변동성에따라 또 매수가 이루어지는 방식입니다. 손절은 4가지중 하나라도 만족하면 매도가 되구요. 제가 만들고싶은식은 떨어졌을때도 또 매수가 가능한가 하는겁니다. ex) 예를 들어 value6을 상향하여 한틱 상승 매수를 하였다 칩니다. 그런데 제가 또 식을 넣습니다. value8로요. 이 value8을 하향하게 되면 또한 매수가 들어가게 됩니다. 하지만 value7을 하향하면 당연히 매도가 되겠지요. value8을 하향했을때 매수가 들어가면 총 2번의 매수가 이루어졌습니다. 그런데 여기서 value6에서의 변동성청산 조건을 만족하게 되면 value8에서 매수한 것 까지 전부 매도가 되게끔말입니다. (important) 여기서 중요한건, value6가격에서 매수를 했고, 주가가떨어져서 value8에서의 다시 매수를 했습니다. 그런데 다시 주가가 올랐을때 value6+value1가격에서 다시 피라미딩이 이루어지게 하고싶습니당. value8+value1이 아니라요. 그리고 value8하향했을때 매수가 이루어졌고 다시 어느정도 주가가 오르다가 또 떨어져 value8을 또 하향하게 되면 매수를 하지않게 하고싶은데요. 그러니까 value8을 하향했을때의 매수는 단한번만 매수를 하는 것이지요. 결론적으로 value6에서 매수를 했고, 가격이 떨어졌을때 value8에서 다시 매수를 할수있구요. 총 청산은 언제나 처럼 value6-value1*3에서 청산이 이루어지는데 이때 value8에서 매수한것도 모두 청산이 되어야한다는 겁니다. 일어날수있는 두번째 경우는 value6에서 매수를했고, 다시 떨어져 value8에서 매수를 했구요. 그런데 가격이 올라 value6+value1에서 다시 매수를 하게 되는겁니다. 뭐 value1 = value3이겠죠. value8+value1이 아닌 value6+value1에서 다음 피라미드가 이루어지도록말입니당. 2. 두번째 문의사항은요 제 식을 보시면 아시겠지만, value6에서 한틱이탈하면 매수를 하게 되어있습니다. 제가 궁금한게 실제적으로 이게 어떻게 이루어지는지를 알수가 없네요. 무슨말이냐면. 제 식의 손실청산이 총 4개인데요. 그게 각각 가격대가 어디인지를 알고싶습니다. 그런데 이게 시스템식에 넣을수있나요? 지표식으로 해야되는거 같은데.. 음 가로선을 리구요 그 옆에 가격과 어떤청산인지가 적혀있도록 식을 짤수잇을까요?