커뮤니티

문의드립니다.

프로필 이미지
종호
2023-01-18 09:35:57
582
글번호 165514
답변완료
안녕하세요. 언제나 수고하심에 감사드립니다. 매수수식: 음봉 뒤에 양봉이 하나 생기고 연속으로 양봉이 2개 더 생겨서 3연속 양봉이 발생히면 (이 때 양봉 종가는 c > c[1] > c[2}) 을 만족 해야 합니다. 그러면 매수를 1개를 합니다. 그 후에 또 현재의 양봉 종가가 > 가장 최근의 이전 양봉 종가 보다 상방이면 매수를 1개를 더합니다. 즉 이렇게 양봉 종가가 이전 발생 양봉 종가 보다 크면 1개씩 더 매수합니다. 총 10개 까지 매수합니다. 기본 청산: 매수후에 누적계약이 2계약까지 가장 최근의 양봉 2개중에 최소값을 종가가 아닌 현재가가 하향하면 전부 청산합니다. 또 총 손실이 50틱 이상이면 전부 청산합니다. 매수 계약이 3게약 이상시 현재가가 평균매수가에 하향 도달하면 전부 청산합니다. 보조 청산:(기본청산과 더불어 동시에 작동하게 합니다.) 1번 :매수 누적 계약이 5개 ~ 7개일 때 현재가 기준으로 누적 이익이 최고값 대비 50% 이하로 떨어지면 전부를 청산합니다. 2번 : 누적계약이 8개 이상일 때 현재가 기준으로 누적 이익이 최고값 대비 20% 이하로 떨어지면 전부를 청산합니다. 3번 : 또는 누적이익이 100틱 이상시 누적이익이 발생하면 현재가 기준으로 누적 이익이 최고값 대비 50% 이하로 떨어지면 전부를 청산합니다. 매도: 반대 논리로 부탁드립니다.
시스템
답변 1
프로필 이미지

예스스탁 예스스탁 답변

2023-01-18 11:26:39

안녕하세요 예스스탁입니다. var : BH(0),PC1(0),PC2(0); var : SL(0),NC1(0),NC2(0); if C > O Then { PC1 = C; PC2 = PC1[1]; } if C < O Then { NC1 = C; NC2 = NC1[1]; } if MarketPosition <= 0 and CountIf(C>O,3) == 3 and C[3] < O[3] and CountIf(C>C[1],2) == 2 Then Buy("b1",OnClose,Def,1); if MarketPosition == 1 Then { if CurrentContracts > CurrentContracts[1] Then BH = H; if H > BH Then BH = H; if C > O and PC1 > PC2 and MaxContracts < 10 Then Buy("bb",OnClose,Def,1); if MaxContracts <= 2 Then ExitLong("bx1",AtStop,min(PC1,PC2)); else ExitLong("bx2",AtStop,AvgEntryPrice); ExitLong("bl",AtStop,AvgEntryPrice-PriceScale*50); if MaxContracts >= 5 and MaxContracts < 8 Then exitlong("btr1",AtStop,BH-(BH-AvgEntryPrice)*0.5); if MaxContracts >= 8 Then exitlong("btr2",AtStop,BH-(BH-AvgEntryPrice)*0.2); if BH >= AvgEntryPrice+PriceScale*100 Then exitlong("btr3",AtStop,BH-(BH-AvgEntryPrice)*0.5); } if MarketPosition >= 0 and CountIf(C<O,3) == 3 and C[3] > O[3] and CountIf(C<C[1],2) == 2 Then Sell("s1",OnClose,Def,1); if MarketPosition == -1 Then { if CurrentContracts > CurrentContracts[1] Then SL = L; if L < SL Then SL = L; if C < O and NC1 < NC2 and MaxContracts < 10 Then Sell("ss",OnClose,Def,1); if MaxContracts <= 2 Then ExitShort("sx1",AtStop,max(NC1,NC2)); else ExitShort("sx2",AtStop,AvgEntryPrice); ExitShort("sl",AtStop,AvgEntryPrice+PriceScale*50); if MaxContracts >= 5 and MaxContracts < 8 Then ExitShort("str1",AtStop,SL+(AvgEntryPrice-SL)*0.5); if MaxContracts >= 8 Then ExitShort("str2",AtStop,SL+(AvgEntryPrice-SL)*0.2); if SL <= AvgEntryPrice-PriceScale*100 Then ExitShort("str3",AtStop,SL+(AvgEntryPrice-SL)*0.5); } 즐거운 하루되세요 > 종호 님이 쓴 글입니다. > 제목 : 문의드립니다. > 안녕하세요. 언제나 수고하심에 감사드립니다. 매수수식: 음봉 뒤에 양봉이 하나 생기고 연속으로 양봉이 2개 더 생겨서 3연속 양봉이 발생히면 (이 때 양봉 종가는 c > c[1] > c[2}) 을 만족 해야 합니다. 그러면 매수를 1개를 합니다. 그 후에 또 현재의 양봉 종가가 > 가장 최근의 이전 양봉 종가 보다 상방이면 매수를 1개를 더합니다. 즉 이렇게 양봉 종가가 이전 발생 양봉 종가 보다 크면 1개씩 더 매수합니다. 총 10개 까지 매수합니다. 기본 청산: 매수후에 누적계약이 2계약까지 가장 최근의 양봉 2개중에 최소값을 종가가 아닌 현재가가 하향하면 전부 청산합니다. 또 총 손실이 50틱 이상이면 전부 청산합니다. 매수 계약이 3게약 이상시 현재가가 평균매수가에 하향 도달하면 전부 청산합니다. 보조 청산:(기본청산과 더불어 동시에 작동하게 합니다.) 1번 :매수 누적 계약이 5개 ~ 7개일 때 현재가 기준으로 누적 이익이 최고값 대비 50% 이하로 떨어지면 전부를 청산합니다. 2번 : 누적계약이 8개 이상일 때 현재가 기준으로 누적 이익이 최고값 대비 20% 이하로 떨어지면 전부를 청산합니다. 3번 : 또는 누적이익이 100틱 이상시 누적이익이 발생하면 현재가 기준으로 누적 이익이 최고값 대비 50% 이하로 떨어지면 전부를 청산합니다. 매도: 반대 논리로 부탁드립니다.