커뮤니티

수식 좀 부탁드립니다 너무 감사합니다!

프로필 이미지
김작가
2025-05-20 23:26:13
260
글번호 191015
답변완료
안녕하세요, 늘 너무 감사합니다. 프라이스 채널을 이용해서 롱숏을 좀 만들어보려고 하는데요. //셋업 과거 120개 봉 중 최고가 봉의 저가 (L)로 만든 프라이스채널 상단선 과거 120개 봉 중 최저가 봉의 고가 (H)로 만든 프라이스채널 하단선 //롱진입 120일 이평선이 과거 30봉 동안 상승일 경우, 전봉의 저가 L[1]가 전전 프라이스채널 하단선[2]을 뚫고 내려갔다가 다음봉의 종가 C가 120일 프라이스채널 하단선[1]을 상방 돌파 할 경우 OnClose에서 롱 진입 //롱청산 BarsSinceEntry >2 에서 직전 종가 C[1]가 그전봉 프라이스채널 상단선[2]을 뚤고 올라갔다가 종가 C가 직전 프라이스채널 상단선[1]보다 낮을 경우 청산 //숏진입 120일 이평선이 과거 30봉 동안 하락일 경우, 전봉의 고가 L[1]가 전전 프라이스채널 상단선[2]을 뚫고 올라갔다가 다음봉의 종가 C가 120일 프라이스채널 상단선[1]을 하방 돌파 할 경우 OnClose에서 숏 진입 //숏청산 BarsSinceEntry >2 에서 직전 종가 C[1]가 그전봉 프라이스채널 하단선[2]을 뚤고 내려갔다가 종가 C가 직전 프라이스채널 하단선[1]보다 높을 경우 청산 //손절 롱의 경우, 120일 이평선을 하방 돌파 하는 경우 atMarket 롱청산 숏의 경우, 120일 이평선을 상방 돌파 하는 경우 atMarket 숏청산 //트레일링 스탑 롱의 경우, 30 포인트 상승 후, 10 포인트 하락 시 청산 숏의 경우, 30 포인트 하락 후, 10 포인트 상승 시 청산 //손절 2 롱의 경우, 120일 이평선 상단에서 윗꼬리의 길이 (H-O)가 몸통 (O-C) 길이의 3배 이상인 음봉이거나, 윗꼬리의 길이 (H-C)가 몸통 (C-O) 길이의 3배 이상인 양봉일 경우, 다음봉 시초가 atMarket에서 손절 숏의 경우, 120일 이평선 하단에서 아랫꼬리의 길이 (C-L)가 몸통 (O-C) 길이의 3배 이상인 음봉이거나, 아랫꼬리의 길이 (O-L)가 몸통 (C-O) 길이의 3배 이상인 양봉일 경우, 다음봉 시초가 atMarket에서 손절 ---- 감사합니다 x 100배 입니다!!!
시스템
답변 2
프로필 이미지

예스스탁 예스스탁 답변

2025-05-21 12:38:08

안녕하세요 예스스탁입니다. INPUT : LENGTH(120); VAR : i(0),E(0); VAR : Top(0),TopL(0); var : Bot(0),BotH(0); Top = 0; TopL = 0; Bot = 0; BotH = 0; For i = 1 to Length { if Top == 0 or (Top > 0 and H[i] > Top) Then { Top = H[i]; TopL = L[i]; } if Bot == 0 or (Bot > 0 and L[i] < Bot) Then { Bot = L[i]; BotH = H[i]; } } E = Ema(c,LENGTH); if MarketPosition <= 0 and L[1] < BotH[2] and C > BotH[1] Then Buy("b"); if MarketPosition == 1 Then { if BarsSinceEntry > 2 and C[1] > TopL[2] and C < TopL[1] Then ExitLong("bx"); if CrossDown(c,E) Then ExitLong("bLoss1"); if highest(H,BarsSinceEntry) >= EntryPrice+30 Then ExitLong("btr",AtStop,highest(H,BarsSinceEntry)-10); if C > E and H-max(C,O) >= abs(O-C)*3 Then ExitLong("bLoss2"); } if MarketPosition >= 0 and H[1] > TopL[2] and C < TopL[1] Then Sell("s"); if MarketPosition == -1 then { if BarsSinceEntry > 2 and C[1] < BotH[2] and C > BotH[1] Then ExitShort("sx"); if CrossUp(c,E) Then ExitShort("sLoss1"); if lowest(L,BarsSinceEntry) <= EntryPrice-30 Then ExitShort("str",AtStop,lowest(L,BarsSinceEntry)+10); if C < E and min(C,O)-L >= abs(O-C)*3 Then ExitShort("sLoss2"); } 즐거운 하루되세요 > 김작가 님이 쓴 글입니다. > 제목 : 수식 좀 부탁드립니다 너무 감사합니다! > 안녕하세요, 늘 너무 감사합니다. 프라이스 채널을 이용해서 롱숏을 좀 만들어보려고 하는데요. //셋업 과거 120개 봉 중 최고가 봉의 저가 (L)로 만든 프라이스채널 상단선 과거 120개 봉 중 최저가 봉의 고가 (H)로 만든 프라이스채널 하단선 //롱진입 120일 이평선이 과거 30봉 동안 상승일 경우, 전봉의 저가 L[1]가 전전 프라이스채널 하단선[2]을 뚫고 내려갔다가 다음봉의 종가 C가 120일 프라이스채널 하단선[1]을 상방 돌파 할 경우 OnClose에서 롱 진입 //롱청산 BarsSinceEntry >2 에서 직전 종가 C[1]가 그전봉 프라이스채널 상단선[2]을 뚤고 올라갔다가 종가 C가 직전 프라이스채널 상단선[1]보다 낮을 경우 청산 //숏진입 120일 이평선이 과거 30봉 동안 하락일 경우, 전봉의 고가 L[1]가 전전 프라이스채널 상단선[2]을 뚫고 올라갔다가 다음봉의 종가 C가 120일 프라이스채널 상단선[1]을 하방 돌파 할 경우 OnClose에서 숏 진입 //숏청산 BarsSinceEntry >2 에서 직전 종가 C[1]가 그전봉 프라이스채널 하단선[2]을 뚤고 내려갔다가 종가 C가 직전 프라이스채널 하단선[1]보다 높을 경우 청산 //손절 롱의 경우, 120일 이평선을 하방 돌파 하는 경우 atMarket 롱청산 숏의 경우, 120일 이평선을 상방 돌파 하는 경우 atMarket 숏청산 //트레일링 스탑 롱의 경우, 30 포인트 상승 후, 10 포인트 하락 시 청산 숏의 경우, 30 포인트 하락 후, 10 포인트 상승 시 청산 //손절 2 롱의 경우, 120일 이평선 상단에서 윗꼬리의 길이 (H-O)가 몸통 (O-C) 길이의 3배 이상인 음봉이거나, 윗꼬리의 길이 (H-C)가 몸통 (C-O) 길이의 3배 이상인 양봉일 경우, 다음봉 시초가 atMarket에서 손절 숏의 경우, 120일 이평선 하단에서 아랫꼬리의 길이 (C-L)가 몸통 (O-C) 길이의 3배 이상인 음봉이거나, 아랫꼬리의 길이 (O-L)가 몸통 (C-O) 길이의 3배 이상인 양봉일 경우, 다음봉 시초가 atMarket에서 손절 ---- 감사합니다 x 100배 입니다!!!
프로필 이미지

김작가

2025-05-21 23:16:03

안녕하세요 너무 감사합니다. 이평선 상승/하락중에만 롱/숏으로 들어가는 조건은 어떻게 추가하면 좋을까요? > 예스스탁 님이 쓴 글입니다. > 제목 : Re : 수식 좀 부탁드립니다 너무 감사합니다! > 안녕하세요 예스스탁입니다. INPUT : LENGTH(120); VAR : i(0),E(0); VAR : Top(0),TopL(0); var : Bot(0),BotH(0); Top = 0; TopL = 0; Bot = 0; BotH = 0; For i = 1 to Length { if Top == 0 or (Top > 0 and H[i] > Top) Then { Top = H[i]; TopL = L[i]; } if Bot == 0 or (Bot > 0 and L[i] < Bot) Then { Bot = L[i]; BotH = H[i]; } } E = Ema(c,LENGTH); if MarketPosition <= 0 and L[1] < BotH[2] and C > BotH[1] Then Buy("b"); if MarketPosition == 1 Then { if BarsSinceEntry > 2 and C[1] > TopL[2] and C < TopL[1] Then ExitLong("bx"); if CrossDown(c,E) Then ExitLong("bLoss1"); if highest(H,BarsSinceEntry) >= EntryPrice+30 Then ExitLong("btr",AtStop,highest(H,BarsSinceEntry)-10); if C > E and H-max(C,O) >= abs(O-C)*3 Then ExitLong("bLoss2"); } if MarketPosition >= 0 and H[1] > TopL[2] and C < TopL[1] Then Sell("s"); if MarketPosition == -1 then { if BarsSinceEntry > 2 and C[1] < BotH[2] and C > BotH[1] Then ExitShort("sx"); if CrossUp(c,E) Then ExitShort("sLoss1"); if lowest(L,BarsSinceEntry) <= EntryPrice-30 Then ExitShort("str",AtStop,lowest(L,BarsSinceEntry)+10); if C < E and min(C,O)-L >= abs(O-C)*3 Then ExitShort("sLoss2"); } 즐거운 하루되세요 > 김작가 님이 쓴 글입니다. > 제목 : 수식 좀 부탁드립니다 너무 감사합니다! > 안녕하세요, 늘 너무 감사합니다. 프라이스 채널을 이용해서 롱숏을 좀 만들어보려고 하는데요. //셋업 과거 120개 봉 중 최고가 봉의 저가 (L)로 만든 프라이스채널 상단선 과거 120개 봉 중 최저가 봉의 고가 (H)로 만든 프라이스채널 하단선 //롱진입 120일 이평선이 과거 30봉 동안 상승일 경우, 전봉의 저가 L[1]가 전전 프라이스채널 하단선[2]을 뚫고 내려갔다가 다음봉의 종가 C가 120일 프라이스채널 하단선[1]을 상방 돌파 할 경우 OnClose에서 롱 진입 //롱청산 BarsSinceEntry >2 에서 직전 종가 C[1]가 그전봉 프라이스채널 상단선[2]을 뚤고 올라갔다가 종가 C가 직전 프라이스채널 상단선[1]보다 낮을 경우 청산 //숏진입 120일 이평선이 과거 30봉 동안 하락일 경우, 전봉의 고가 L[1]가 전전 프라이스채널 상단선[2]을 뚫고 올라갔다가 다음봉의 종가 C가 120일 프라이스채널 상단선[1]을 하방 돌파 할 경우 OnClose에서 숏 진입 //숏청산 BarsSinceEntry >2 에서 직전 종가 C[1]가 그전봉 프라이스채널 하단선[2]을 뚤고 내려갔다가 종가 C가 직전 프라이스채널 하단선[1]보다 높을 경우 청산 //손절 롱의 경우, 120일 이평선을 하방 돌파 하는 경우 atMarket 롱청산 숏의 경우, 120일 이평선을 상방 돌파 하는 경우 atMarket 숏청산 //트레일링 스탑 롱의 경우, 30 포인트 상승 후, 10 포인트 하락 시 청산 숏의 경우, 30 포인트 하락 후, 10 포인트 상승 시 청산 //손절 2 롱의 경우, 120일 이평선 상단에서 윗꼬리의 길이 (H-O)가 몸통 (O-C) 길이의 3배 이상인 음봉이거나, 윗꼬리의 길이 (H-C)가 몸통 (C-O) 길이의 3배 이상인 양봉일 경우, 다음봉 시초가 atMarket에서 손절 숏의 경우, 120일 이평선 하단에서 아랫꼬리의 길이 (C-L)가 몸통 (O-C) 길이의 3배 이상인 음봉이거나, 아랫꼬리의 길이 (O-L)가 몸통 (C-O) 길이의 3배 이상인 양봉일 경우, 다음봉 시초가 atMarket에서 손절 ---- 감사합니다 x 100배 입니다!!!