커뮤니티

수식수정부탁드립니다.

프로필 이미지
jba
2018-06-07 21:45:44
252
글번호 119569
답변완료
아래는 이미 답변받은 수식인데 설명이 부족하여 원하는수식의 작성이 안됐습니다. if dayopen >= value1 and idx <= ndate+5 Then 여기서 아마도 시초가가 value1 이상인 경우에만 동작해서 그런것 같은데 1차매수가 진행된 날에 한해서만 2차매수가 진행되며 1차매수 후 그다음날 시초가가 value1이하이면서 2차매수 가격대가 오면 매수주문이 안됩니다. 설명이 미흡해서 그런것 같습니다. 죄송합니다. 다시 조건을 적어보면... ================================================================================== 5거래일이내에 가장 최근의 전일종가대비 10%이상 상승마감한 캔들에서 전일종가 < 당일저가 인경우 전일종가~당일종가까지 4등분선 전일종가 > 당일저가 인경우 당일저가~당일종가까지 4등분선을 기준으로 시초가가 1번선 이상일경우 2번선에서 매수, 3%수익실현 2번선에서 매수 후 하락시 3번선에서 추가매수, 1.5% 수익실현 (당일에만 추가매수가 아닌 거래일이 지나더라도 5거래일 이내라면 추가매수) 2차매수까지 진행된경우 4번선에서 손절 시초가가 1번선 아래, 2번선 이상인경우는 3번선에서 매수 ,3%수익실현 3번선에서 매수후 하락시 4번선에서 추가매수, 1.5% 수익실현 (당일에만 추가매수가 아닌 거래일이 지나더라도 5거래일 이내라면 추가매수) 2차매수까지 진행된경우 5번선에서 손절 2번선에서 한번이라도 매수진행된 경우 2번선은 재진입 금지 3번선에서 한번이라도 매수진행된 경우 3번선은 재진입 금지 ============================================================================== var : idx(0),ndate(0),maxv(0),minv(0),midv(0); if bdate != bdate[1] Then{ idx = idx+1; if DayClose(1) >= DayClose(2)*1.10 Then { ndate = idx; var1 = min(DayLow(1),DayClose(2)); maxv = max(DayClose(1),var1); minv = min(DayClose(1),var1); midv = (maxv+minv)/2; value1 = maxv; value2 = (maxv+midv)/2; value3 = midv; value4 = (midv+minv)/2; value5 = minv; } } if dayopen >= value1 and idx <= ndate+5 Then { if MarketPosition == 0 then buy("b11",atlimit,value2); if MarketPosition == 1 and MaxEntries == 1 Then buy("b12",atlimit,value3); if MarketPosition == 1 and MaxEntries == 2 Then ExitLong("bl1",AtStop,value4); } if dayopen < value1 and dayopen >= value2 and idx <= ndate+5 Then { if MarketPosition == 0 then buy("b21",atlimit,value3); if MarketPosition == 1 and MaxEntries == 1 Then buy("b22",atlimit,value4); if MarketPosition == 1 and MaxEntries == 2 Then ExitLong("bl2",AtStop,value5); } if MarketPosition == 1 Then { if MaxEntries == 1 Then ExitLong("bp1",atlimit,avgEntryPrice*1.03); if MaxEntries == 2 Then ExitLong("bp2",atlimit,avgEntryPrice*1.015); } > 5거래일이내에 가장 최근의 전일종가대비 10%이상 상승마감한 캔들에서 전일종가 < 당일저가 인경우 전일종가~당일종가까지 4등분선 전일종가 > 당일저가 인경우 당일저가~당일종가까지 4등분선을 기준으로 시초가가 1번선 이상일경우 2번선에서 매수, 3%수익실현 2번선에서 매수 후 하락시 3번선에서 추가매수, 1.5% 수익실현 2차매수까지 진행된경우 4번선에서 손절 시초가가 1번선 아래, 2번선 이상인경우는 3번선에서 매수 ,3%수익실현 3번선에서 매수후 하락시 4번선에서 추가매수, 1.5% 수익실현 2차매수까진 진행된 경우 5번선에서 손절하는 수식 부탁드립니다.
시스템
답변 1
프로필 이미지

예스스탁 예스스탁 답변

2018-06-08 19:48:47

안녕하세요 예스스탁입니다. var : idx(0),ndate(0),maxv(0),minv(0),midv(0); if bdate != bdate[1] Then { idx = idx+1; if DayClose(1) >= DayClose(2)*1.10 Then { ndate = idx; var1 = min(DayLow(1),DayClose(2)); maxv = max(DayClose(1),var1); minv = min(DayClose(1),var1); midv = (maxv+minv)/2; value1 = maxv; value2 = (maxv+midv)/2; value3 = midv; value4 = (midv+minv)/2; value5 = minv; } } if dayopen >= value1 and idx <= ndate+5 and MarketPosition == 0 then buy("b11",atlimit,value2); if MarketPosition == 1 and IsEntryName("b11") == true and idx <= idx[BarsSinceEntry]+5 then { if MaxEntries == 1 Then buy("b12",atlimit,value3); if MaxEntries == 2 Then ExitLong("bl1",AtStop,value4); } if dayopen < value1 and dayopen >= value2 and idx <= ndate+5 and MarketPosition == 0 then buy("b21",atlimit,value3); if MarketPosition == 1 and IsEntryName("b12") == true and idx <= idx[BarsSinceEntry]+5 then { if MaxEntries == 1 Then buy("b22",atlimit,value4); if MaxEntries == 2 Then ExitLong("bl2",AtStop,value5); } if MarketPosition == 1 Then { if MaxEntries == 1 Then ExitLong("bp1",atlimit,avgEntryPrice*1.03); if MaxEntries == 2 Then ExitLong("bp2",atlimit,avgEntryPrice*1.015); } 즐거운 하루되세요 > jba 님이 쓴 글입니다. > 제목 : 수식수정부탁드립니다. > 아래는 이미 답변받은 수식인데 설명이 부족하여 원하는수식의 작성이 안됐습니다. if dayopen >= value1 and idx <= ndate+5 Then 여기서 아마도 시초가가 value1 이상인 경우에만 동작해서 그런것 같은데 1차매수가 진행된 날에 한해서만 2차매수가 진행되며 1차매수 후 그다음날 시초가가 value1이하이면서 2차매수 가격대가 오면 매수주문이 안됩니다. 설명이 미흡해서 그런것 같습니다. 죄송합니다. 다시 조건을 적어보면... ================================================================================== 5거래일이내에 가장 최근의 전일종가대비 10%이상 상승마감한 캔들에서 전일종가 < 당일저가 인경우 전일종가~당일종가까지 4등분선 전일종가 > 당일저가 인경우 당일저가~당일종가까지 4등분선을 기준으로 시초가가 1번선 이상일경우 2번선에서 매수, 3%수익실현 2번선에서 매수 후 하락시 3번선에서 추가매수, 1.5% 수익실현 (당일에만 추가매수가 아닌 거래일이 지나더라도 5거래일 이내라면 추가매수) 2차매수까지 진행된경우 4번선에서 손절 시초가가 1번선 아래, 2번선 이상인경우는 3번선에서 매수 ,3%수익실현 3번선에서 매수후 하락시 4번선에서 추가매수, 1.5% 수익실현 (당일에만 추가매수가 아닌 거래일이 지나더라도 5거래일 이내라면 추가매수) 2차매수까지 진행된경우 5번선에서 손절 2번선에서 한번이라도 매수진행된 경우 2번선은 재진입 금지 3번선에서 한번이라도 매수진행된 경우 3번선은 재진입 금지 ============================================================================== var : idx(0),ndate(0),maxv(0),minv(0),midv(0); if bdate != bdate[1] Then{ idx = idx+1; if DayClose(1) >= DayClose(2)*1.10 Then { ndate = idx; var1 = min(DayLow(1),DayClose(2)); maxv = max(DayClose(1),var1); minv = min(DayClose(1),var1); midv = (maxv+minv)/2; value1 = maxv; value2 = (maxv+midv)/2; value3 = midv; value4 = (midv+minv)/2; value5 = minv; } } if dayopen >= value1 and idx <= ndate+5 Then { if MarketPosition == 0 then buy("b11",atlimit,value2); if MarketPosition == 1 and MaxEntries == 1 Then buy("b12",atlimit,value3); if MarketPosition == 1 and MaxEntries == 2 Then ExitLong("bl1",AtStop,value4); } if dayopen < value1 and dayopen >= value2 and idx <= ndate+5 Then { if MarketPosition == 0 then buy("b21",atlimit,value3); if MarketPosition == 1 and MaxEntries == 1 Then buy("b22",atlimit,value4); if MarketPosition == 1 and MaxEntries == 2 Then ExitLong("bl2",AtStop,value5); } if MarketPosition == 1 Then { if MaxEntries == 1 Then ExitLong("bp1",atlimit,avgEntryPrice*1.03); if MaxEntries == 2 Then ExitLong("bp2",atlimit,avgEntryPrice*1.015); } > 5거래일이내에 가장 최근의 전일종가대비 10%이상 상승마감한 캔들에서 전일종가 < 당일저가 인경우 전일종가~당일종가까지 4등분선 전일종가 > 당일저가 인경우 당일저가~당일종가까지 4등분선을 기준으로 시초가가 1번선 이상일경우 2번선에서 매수, 3%수익실현 2번선에서 매수 후 하락시 3번선에서 추가매수, 1.5% 수익실현 2차매수까지 진행된경우 4번선에서 손절 시초가가 1번선 아래, 2번선 이상인경우는 3번선에서 매수 ,3%수익실현 3번선에서 매수후 하락시 4번선에서 추가매수, 1.5% 수익실현 2차매수까진 진행된 경우 5번선에서 손절하는 수식 부탁드립니다.