커뮤니티

문의드립니다.

프로필 이미지
번성
2022-01-05 14:56:12
1355
글번호 155140
답변완료
좋은 답변 감사드립니다. 아래처럼 제가 질문드리고 답변주신대로 적용하였는데 2차,3차... 진입은 처음 캔들에 1개씩만 진입이 되지만 첫번째 1차 진입시(매수,매도)에는 여전히 +50틱이나 -50틱이 걸리는 모든 캔들에 진입이 되어 다량의 매수, 매도가 이루어지고 있어요. 1차 시기에도 2차,3차...처럼 1개만 진입되도록 수정 부탁드립니다. 아울러 1차와 2차 시기에는 1개만, 3차와 4차 시기에는 2개씩, 5차와 6차 시기에는 3개씩 이렇게 2단계 마다 진입량을 1개씩 늘려가며 진입할 수 있도록 변경 원합니다. 너무 좋은 답변에 다시한번 감사드립니다. 새해 복 많이 받으세요 안녕하세요 예스스탁입니다. 두번째 진입이 첫진입과 같은 가격으로 되어 있었습니다. 수정한 식입니다. > 번성 님이 쓴 글입니다. > 제목 : 문의드립니다 > 소중한 답변 감사합니다. 아래 처럼 모든진입신호를 적용하였더니 계속되는 모든 캔들 중에 추가 +50이나, -50이 있는 모든 캔들마다 동시점에서 각 캔들별로 다수 진입되는 일이 생깁니다. 캔들마다 진입이 아니라 최초 진입 때처럼 추가 +50이나, -50에서 하나씩만 진입되든지, 최초의 캔들에서만 진입되도록 수정 부탁드립니다. #상승구간의 마지막저점 저장 if Color == RED Then { var1 = 저점[2,1]; } #하락구간의 마지막 고점 저장 if Color == BLUE Then { var2 = 고점[2,1]; } if MarketPosition <= 0 Then { if color == BLUE and var1 > 0 Then Buy("b",AtLimit,var1-PriceScale*50,1); } if MarketPosition == 1 Then { Buy("bb",AtLimit,(var1[BarsSinceEntry]-PriceScale*50)-(PriceScale*50)*MaxEntries,1); if T == -1 and 고점[1,1] > 0 Then ExitLong("bx1",AtLimit,고점[1,1]+PriceScale*1); if T == 1 and 고점[2,1] > 0 Then ExitLong("bx2",AtLimit,고점[2,1]+PriceScale*1); } if MarketPosition >= 0 Then { if Color == RED and Var2 > 0 Then Sell("s",AtLimit,Var2+PriceScale*50,1); } if MarketPosition == -1 Then { Sell("ss",AtLimit,(var2[BarsSinceEntry]+PriceScale*50)+(PriceScale*50)*MaxEntries,1); if T == 1 and 저점[1,1] > 0 Then ExitShort("sx1",AtLimit,저점[1,1]-PriceScale*1); if T == -1 and 저점[2,1] > 0 Then ExitShort("sx2",AtLimit,저점[2,1]-PriceScale*1); } 즐거운 하루되세요 > 번성 님이 쓴 글입니다. > 제목 : 문의드립니다 > 소중한 답변 감사합니다. 아래 처럼 모든진입신호를 적용하였더니 계속되는 모든 캔들 중에 추가 +50이나, -50이 있는 모든 캔들마다 동시점에서 각 캔들별로 다수 진입되는 일이 생깁니다. 캔들마다 진입이 아니라 최초 진입 때처럼 추가 +50이나, -50에서 하나씩만 진입되든지, 최초의 캔들에서만 진입되도록 수정 부탁드립니다. > 예스스탁 님이 쓴 글입니다. > 제목 : Re : 문의드립니다 > 안녕하세요 예스스탁입니다. 수식에 추가 진입을 하는 내용이 들어가면 시스템 적용시 피라미딩을 모든진입신호 허용으로 설정하고 적용하셔야 합니다. #상승구간의 마지막저점 저장 if Color == RED Then { var1 = 저점[2,1]; } #하락구간의 마지막 고점 저장 if Color == BLUE Then { var2 = 고점[2,1]; } if MarketPosition <= 0 Then { if color == BLUE and var1 > 0 Then Buy("b",AtLimit,var1-PriceScale*50,1); } if MarketPosition == 1 Then { Buy("bb",AtLimit,var1[BarsSinceEntry]-(PriceScale*50)*MaxEntries,1); if T == -1 and 고점[1,1] > 0 Then ExitLong("bx1",AtLimit,고점[1,1]+PriceScale*1); if T == 1 and 고점[2,1] > 0 Then ExitLong("bx2",AtLimit,고점[2,1]+PriceScale*1); } if MarketPosition >= 0 Then { if Color == RED and Var2 > 0 Then Sell("s",AtLimit,Var2+PriceScale*50,1); } if MarketPosition == -1 Then { Sell("ss",AtLimit,var1[BarsSinceEntry]+(PriceScale*50)*MaxEntries,1); if T == 1 and 저점[1,1] > 0 Then ExitShort("sx1",AtLimit,저점[1,1]-PriceScale*1); if T == -1 and 저점[2,1] > 0 Then ExitShort("sx2",AtLimit,저점[2,1]-PriceScale*1); } 새해 좋은 일만 가득하시길 바랍니다.
시스템
답변 1
프로필 이미지

예스스탁 예스스탁 답변

2022-01-05 16:29:49

안녕하세요 예스스탁입니다. 각 방향의 첫진입은 "b"와 "s"입니다. 해당 신호들은 모두 무포지션이거나 반대포지션상태에서만 발생하게 되어 있어 해당 신호로 중복으로 추가진입은 되지 않습니다. 추가로 진입하는 신호는 모두 bb나 ss입니다. 식상으로 첫진입은 청산이 된것이 아니면 포지션 진행중에 또 발생할수가 없습니다. 차트에 식을 적용해 봐도 해당신호가 중복으로 나오지는 않습니다. 우선 첫진입을 지정한 가격 이상이나 이하에서 하향터치, 상향터치로 변경해 드리고 수량부분도 수정해 드립니다. 아내 내용으로 해결이 안되시면 02-3453-1060으로 전화주시기 바랍니다. 해당 부분은 정확한 원인을 파악하고 수정을 해봐야 할것 같습니다. #상승구간의 마지막저점 저장 if Color == RED Then { var1 = 저점[2,1]; } #하락구간의 마지막 고점 저장 if Color == BLUE Then { var2 = 고점[2,1]; } if MarketPosition <= 0 Then { if color == BLUE and var1 > 0 and L > var1-PriceScale*50 Then Buy("b",AtLimit,var1-PriceScale*50,1); } if MarketPosition == 1 Then { value1 = Floor(MaxEntries/2)+1; Buy("bb",AtLimit,(var1[BarsSinceEntry]-PriceScale*50)-(PriceScale*50)*MaxEntries,1); if T == -1 and 고점[1,1] > 0 Then ExitLong("bx1",AtLimit,고점[1,1]+PriceScale*1); if T == 1 and 고점[2,1] > 0 Then ExitLong("bx2",AtLimit,고점[2,1]+PriceScale*1); } if MarketPosition >= 0 Then { if Color == RED and Var2 > 0 and H < var2+PriceScale*50 Then Sell("s",AtLimit,Var2+PriceScale*50,1); } if MarketPosition == -1 Then1 { value1 = Floor(MaxEntries/2)+1; Sell("ss",AtLimit,(var2[BarsSinceEntry]+PriceScale*50)+(PriceScale*50)*MaxEntries,1); if T == 1 and 저점[1,1] > 0 Then ExitShort("sx1",AtLimit,저점[1,1]-PriceScale*1); if T == -1 and 저점[2,1] > 0 Then ExitShort("sx2",AtLimit,저점[2,1]-PriceScale*1); } 즐거운 하루되세요 > 번성 님이 쓴 글입니다. > 제목 : 문의드립니다. > 좋은 답변 감사드립니다. 아래처럼 제가 질문드리고 답변주신대로 적용하였는데 2차,3차... 진입은 처음 캔들에 1개씩만 진입이 되지만 첫번째 1차 진입시(매수,매도)에는 여전히 +50틱이나 -50틱이 걸리는 모든 캔들에 진입이 되어 다량의 매수, 매도가 이루어지고 있어요. 1차 시기에도 2차,3차...처럼 1개만 진입되도록 수정 부탁드립니다. 아울러 1차와 2차 시기에는 1개만, 3차와 4차 시기에는 2개씩, 5차와 6차 시기에는 3개씩 이렇게 2단계 마다 진입량을 1개씩 늘려가며 진입할 수 있도록 변경 원합니다. 너무 좋은 답변에 다시한번 감사드립니다. 새해 복 많이 받으세요 안녕하세요 예스스탁입니다. 두번째 진입이 첫진입과 같은 가격으로 되어 있었습니다. 수정한 식입니다. > 번성 님이 쓴 글입니다. > 제목 : 문의드립니다 > 소중한 답변 감사합니다. 아래 처럼 모든진입신호를 적용하였더니 계속되는 모든 캔들 중에 추가 +50이나, -50이 있는 모든 캔들마다 동시점에서 각 캔들별로 다수 진입되는 일이 생깁니다. 캔들마다 진입이 아니라 최초 진입 때처럼 추가 +50이나, -50에서 하나씩만 진입되든지, 최초의 캔들에서만 진입되도록 수정 부탁드립니다. #상승구간의 마지막저점 저장 if Color == RED Then { var1 = 저점[2,1]; } #하락구간의 마지막 고점 저장 if Color == BLUE Then { var2 = 고점[2,1]; } if MarketPosition <= 0 Then { if color == BLUE and var1 > 0 Then Buy("b",AtLimit,var1-PriceScale*50,1); } if MarketPosition == 1 Then { Buy("bb",AtLimit,(var1[BarsSinceEntry]-PriceScale*50)-(PriceScale*50)*MaxEntries,1); if T == -1 and 고점[1,1] > 0 Then ExitLong("bx1",AtLimit,고점[1,1]+PriceScale*1); if T == 1 and 고점[2,1] > 0 Then ExitLong("bx2",AtLimit,고점[2,1]+PriceScale*1); } if MarketPosition >= 0 Then { if Color == RED and Var2 > 0 Then Sell("s",AtLimit,Var2+PriceScale*50,1); } if MarketPosition == -1 Then { Sell("ss",AtLimit,(var2[BarsSinceEntry]+PriceScale*50)+(PriceScale*50)*MaxEntries,1); if T == 1 and 저점[1,1] > 0 Then ExitShort("sx1",AtLimit,저점[1,1]-PriceScale*1); if T == -1 and 저점[2,1] > 0 Then ExitShort("sx2",AtLimit,저점[2,1]-PriceScale*1); } 즐거운 하루되세요 > 번성 님이 쓴 글입니다. > 제목 : 문의드립니다 > 소중한 답변 감사합니다. 아래 처럼 모든진입신호를 적용하였더니 계속되는 모든 캔들 중에 추가 +50이나, -50이 있는 모든 캔들마다 동시점에서 각 캔들별로 다수 진입되는 일이 생깁니다. 캔들마다 진입이 아니라 최초 진입 때처럼 추가 +50이나, -50에서 하나씩만 진입되든지, 최초의 캔들에서만 진입되도록 수정 부탁드립니다. > 예스스탁 님이 쓴 글입니다. > 제목 : Re : 문의드립니다 > 안녕하세요 예스스탁입니다. 수식에 추가 진입을 하는 내용이 들어가면 시스템 적용시 피라미딩을 모든진입신호 허용으로 설정하고 적용하셔야 합니다. #상승구간의 마지막저점 저장 if Color == RED Then { var1 = 저점[2,1]; } #하락구간의 마지막 고점 저장 if Color == BLUE Then { var2 = 고점[2,1]; } if MarketPosition <= 0 Then { if color == BLUE and var1 > 0 Then Buy("b",AtLimit,var1-PriceScale*50,1); } if MarketPosition == 1 Then { Buy("bb",AtLimit,var1[BarsSinceEntry]-(PriceScale*50)*MaxEntries,1); if T == -1 and 고점[1,1] > 0 Then ExitLong("bx1",AtLimit,고점[1,1]+PriceScale*1); if T == 1 and 고점[2,1] > 0 Then ExitLong("bx2",AtLimit,고점[2,1]+PriceScale*1); } if MarketPosition >= 0 Then { if Color == RED and Var2 > 0 Then Sell("s",AtLimit,Var2+PriceScale*50,1); } if MarketPosition == -1 Then { Sell("ss",AtLimit,var1[BarsSinceEntry]+(PriceScale*50)*MaxEntries,1); if T == 1 and 저점[1,1] > 0 Then ExitShort("sx1",AtLimit,저점[1,1]-PriceScale*1); if T == -1 and 저점[2,1] > 0 Then ExitShort("sx2",AtLimit,저점[2,1]-PriceScale*1); } 새해 좋은 일만 가득하시길 바랍니다.