커뮤니티

재문의

프로필 이미지
웹피
2016-06-09 16:09:01
114
글번호 98901
답변완료
좋은 답변 감사드립니다. 수정된 기준에 따라 아래 수식을 수정해 주시면 감사하겠습니다. 옆에 간략하게 주석을 달아주시면 좋겠습니다. 1.차트환경 해외선물 7일이평선(기울기에 따라 우상향은 빨강, 우하향은 파랑색 선으로 표시) 현재봉이 위치한 7일선의 수평값(7일선과 완성봉이 교차하는 점의 현재값)을 기준으로 위아래 틱값 차이를 구한다. T1 = 7일선 수평값-완성봉의 저가 T2 = 완성봉의 고가-7일선 수평값 라고 할때 2.진입-수정 매수: 7일선에서 5개봉이 연속으로 우상향 중일때 봉이 7일선 아래로 크로스다운하여 T1 >= 25틱 이면 다음 봉에서 매수진입 매도: 7일선에서 5개봉이 연속으로 우하향 중일때 봉이 7일선 위로 크로스업하여 T2 >= 25틱 이면 다음 봉에서 매도진입 3.손절 50틱 4.본절-수정 수익이 40틱을 초과하면 손절값=진입값+2틱(매수시, 매도시는 -2틱) 으로 손절라인 이동 5.익절-수정 수익이 100틱 이상이면 트레일링스탑 시작(20틱 뒤로 밀릴때까지는 현재 포지션을 계속유지하며 20틱 뒤로 밀리면 청산) 수익이 100틱 미만이면 현재봉의 저점이 직전 봉의 저점을 2회연속 돌파하면 2회째 저점 돌파후 즉시 청산(매수진입시) 현재봉의 고점이 직전 봉의 고점을 2회연속 돌파하면 2회째 고점 돌파후 즉시 청산(매도진입시) 6.수익-수정 익절, 손절 표시 출력 진입가와 손절가 또는 익절가의 차액도 괄호안에 출력 > 예스스탁 님이 쓴 글입니다. > 제목 : Re : 문의드립니다. > 안녕하세요 예스스탁입니다. var : mav(0),T(0),T1(0),T2(0),value(0); mav = ma(C,7); if mav > mav[1] Then T = 1; if mav < mav[1] Then T = -1; if T == 1 and T[1] != 1 Then Condition1 = false; if T == -1 and T[1] != -1 Then Condition2 = false; if T == 1 Then{ if CrossDown(c,mav) Then{ value = mav; Condition1 = true; } if Condition1 == true then{ T1 = abs(value-L)/PriceScale; T2 = abs(H-value)/PriceScale; if T1 >= 25 Then buy("b",AtMarket); } } if T == -1 Then{ if CrossUp(c,mav) Then{ value = mav; Condition2 = true; } if Condition2 == true then{ T1 = abs(value-L)/PriceScale; T2 = abs(H-value)/PriceScale; if T2 >= 25 Then sell("s",AtMarket); } } if MarketPosition == 1 Then{ if highest(H,BarsSinceEntry) < EntryPrice+PriceScale*50 Then ExitLong("매수손절1",AtStop,EntryPrice-PriceScale*50); else ExitLong("매수손절2",AtStop,EntryPrice+PriceScale*2); if highest(H,BarsSinceEntry) >= EntryPrice+PriceScale*100 and countif(T == -1,2) == 2 Then ExitLong("매수익절1"); if countif(L < L[1],2) == 2 Then ExitLong("매수익절2",AtStop,L-PriceScale); } if MarketPosition == -1 Then{ if Lowest(L,BarsSinceEntry) > EntryPrice-PriceScale*50 Then ExitShort("매도손절1",AtStop,EntryPrice+PriceScale*50); else ExitShort("매도손절2",AtStop,EntryPrice-PriceScale*2); if Lowest(L,BarsSinceEntry) <= EntryPrice-PriceScale*100 and countif(T == 1,2) == 2 Then ExitShort("매도익절1"); if countif(H > H[1],2) == 2 Then ExitShort("매도악절2",AtStop,H+PriceScale); } 즐거운 하루되세요 > 웹피 님이 쓴 글입니다. > 제목 : 문의드립니다. > 안녕하세요. 항상 도움주셔서 감사합니다. 아래와 같이 하려는데 수식 부탁드립니다. 1.차트환경 해외선물 7일이평선(기울기에 따라 우상향은 빨강, 우하향은 파랑색 선으로 표시) 현재봉이 위치한 7일선의 수평값(7일선과 완성봉이 교차하는 점의 현재값)을 기준으로 위아래 틱값 차이를 구한다. T1 = 7일선 수평값-완성봉의 저가 T2 = 완성봉의 고가-7일선 수평값 라고 할때 2.진입 매수: 7일선이 우상향 중일때 봉이 7일선 아래로 크로스다운하여 T1 >= 25틱 이면 다음 봉에서 매수진입 매도: 7일선이 우하향 중일때 봉이 7일선 위로 크로스업하여 T2 >= 25틱 이면 다음 봉에서 매도진입 3.손절 50틱 4.본절 수익이 50틱을 초과하면 손절값=진입값+2틱(매수시, 매도시는 -2틱) 으로 손절라인 이동 5.익절 수익이 100틱 이상이면 M1 = 7일선의 방향이 바뀐후 2개봉 연속 바뀐 방향 유지하면 청산 M2 = 3회 연속 직전 봉의 저점을 돌파하면 3회째 저점 돌파후 즉시 청산(매수진입시) 3회 연속 직전 봉의 고점을 돌파하면 3회째 고점 돌파후 즉시 청산(매도진입시) 이라고 할때 M1 또는 M2 중에서 먼저 발생하는 쪽을 택하여 청산 6.수익 익절, 손절 표시 출력
시스템
답변 1
프로필 이미지

예스스탁 예스스탁 답변

2016-06-10 09:34:29

안녕하세요 예스스탁입니다. var : mav(0),T(0),T1(0),T2(0),value(0); mav = ma(C,7); if mav > mav[1] Then T = 1; if mav < mav[1] Then T = -1; if T == 1 and T[1] != 1 Then Condition1 = false; if T == -1 and T[1] != -1 Then Condition2 = false; if T == 1 Then{ if CrossDown(c,mav) and countif(T==1,5) == 5 Then{ value = mav; Condition1 = true; } if Condition1 == true then{ T1 = abs(value-L)/PriceScale; T2 = abs(H-value)/PriceScale; if T1 >= 25 Then buy("b",AtMarket); } } if T == -1 Then{ if CrossUp(c,mav) and countif(T==-11,5) == 5 Then{ value = mav; Condition2 = true; } if Condition2 == true then{ T1 = abs(value-L)/PriceScale; T2 = abs(H-value)/PriceScale; if T2 >= 25 Then sell("s",AtMarket); } } if MarketPosition == 1 Then{ if highest(H,BarsSinceEntry) < EntryPrice+PriceScale*40 Then ExitLong("매수손절1",AtStop,EntryPrice-PriceScale*50); else ExitLong("매수손절2",AtStop,EntryPrice+PriceScale*2); if highest(H,BarsSinceEntry) >= EntryPrice+PriceScale*100 Then ExitLong("매수익절1",AtStop,highest(H,BarsSinceEntry)-PriceScale-20); if countif(L < L[1],1) == 1 Then ExitLong("매수익절2",AtStop,L-PriceScale); } if MarketPosition == -1 Then{ if Lowest(L,BarsSinceEntry) > EntryPrice-PriceScale*40 Then ExitShort("매도손절1",AtStop,EntryPrice+PriceScale*50); else ExitShort("매도손절2",AtStop,EntryPrice-PriceScale*2); if Lowest(L,BarsSinceEntry) <= EntryPrice-PriceScale*100 Then ExitShort("매도익절1",AtStop,lowest(L,BarsSinceEntry)+PriceScale*20); if countif(H > H[1],1) == 1 Then ExitShort("매도익절2",AtStop,H+PriceScale); } 신호의 이름에는 변수값을 지정할 수 없어 차액표시는 가능하지 않습니다. 즐거운 하루되세요 > 웹피 님이 쓴 글입니다. > 제목 : 재문의 > 좋은 답변 감사드립니다. 수정된 기준에 따라 아래 수식을 수정해 주시면 감사하겠습니다. 옆에 간략하게 주석을 달아주시면 좋겠습니다. 1.차트환경 해외선물 7일이평선(기울기에 따라 우상향은 빨강, 우하향은 파랑색 선으로 표시) 현재봉이 위치한 7일선의 수평값(7일선과 완성봉이 교차하는 점의 현재값)을 기준으로 위아래 틱값 차이를 구한다. T1 = 7일선 수평값-완성봉의 저가 T2 = 완성봉의 고가-7일선 수평값 라고 할때 2.진입-수정 매수: 7일선에서 5개봉이 연속으로 우상향 중일때 봉이 7일선 아래로 크로스다운하여 T1 >= 25틱 이면 다음 봉에서 매수진입 매도: 7일선에서 5개봉이 연속으로 우하향 중일때 봉이 7일선 위로 크로스업하여 T2 >= 25틱 이면 다음 봉에서 매도진입 3.손절 50틱 4.본절-수정 수익이 40틱을 초과하면 손절값=진입값+2틱(매수시, 매도시는 -2틱) 으로 손절라인 이동 5.익절-수정 수익이 100틱 이상이면 트레일링스탑 시작(20틱 뒤로 밀릴때까지는 현재 포지션을 계속유지하며 20틱 뒤로 밀리면 청산) 수익이 100틱 미만이면 현재봉의 저점이 직전 봉의 저점을 2회연속 돌파하면 2회째 저점 돌파후 즉시 청산(매수진입시) 현재봉의 고점이 직전 봉의 고점을 2회연속 돌파하면 2회째 고점 돌파후 즉시 청산(매도진입시) 6.수익-수정 익절, 손절 표시 출력 진입가와 손절가 또는 익절가의 차액도 괄호안에 출력 > 예스스탁 님이 쓴 글입니다. > 제목 : Re : 문의드립니다. > 안녕하세요 예스스탁입니다. var : mav(0),T(0),T1(0),T2(0),value(0); mav = ma(C,7); if mav > mav[1] Then T = 1; if mav < mav[1] Then T = -1; if T == 1 and T[1] != 1 Then Condition1 = false; if T == -1 and T[1] != -1 Then Condition2 = false; if T == 1 Then{ if CrossDown(c,mav) Then{ value = mav; Condition1 = true; } if Condition1 == true then{ T1 = abs(value-L)/PriceScale; T2 = abs(H-value)/PriceScale; if T1 >= 25 Then buy("b",AtMarket); } } if T == -1 Then{ if CrossUp(c,mav) Then{ value = mav; Condition2 = true; } if Condition2 == true then{ T1 = abs(value-L)/PriceScale; T2 = abs(H-value)/PriceScale; if T2 >= 25 Then sell("s",AtMarket); } } if MarketPosition == 1 Then{ if highest(H,BarsSinceEntry) < EntryPrice+PriceScale*50 Then ExitLong("매수손절1",AtStop,EntryPrice-PriceScale*50); else ExitLong("매수손절2",AtStop,EntryPrice+PriceScale*2); if highest(H,BarsSinceEntry) >= EntryPrice+PriceScale*100 and countif(T == -1,2) == 2 Then ExitLong("매수익절1"); if countif(L < L[1],2) == 2 Then ExitLong("매수익절2",AtStop,L-PriceScale); } if MarketPosition == -1 Then{ if Lowest(L,BarsSinceEntry) > EntryPrice-PriceScale*50 Then ExitShort("매도손절1",AtStop,EntryPrice+PriceScale*50); else ExitShort("매도손절2",AtStop,EntryPrice-PriceScale*2); if Lowest(L,BarsSinceEntry) <= EntryPrice-PriceScale*100 and countif(T == 1,2) == 2 Then ExitShort("매도익절1"); if countif(H > H[1],2) == 2 Then ExitShort("매도악절2",AtStop,H+PriceScale); } 즐거운 하루되세요 > 웹피 님이 쓴 글입니다. > 제목 : 문의드립니다. > 안녕하세요. 항상 도움주셔서 감사합니다. 아래와 같이 하려는데 수식 부탁드립니다. 1.차트환경 해외선물 7일이평선(기울기에 따라 우상향은 빨강, 우하향은 파랑색 선으로 표시) 현재봉이 위치한 7일선의 수평값(7일선과 완성봉이 교차하는 점의 현재값)을 기준으로 위아래 틱값 차이를 구한다. T1 = 7일선 수평값-완성봉의 저가 T2 = 완성봉의 고가-7일선 수평값 라고 할때 2.진입 매수: 7일선이 우상향 중일때 봉이 7일선 아래로 크로스다운하여 T1 >= 25틱 이면 다음 봉에서 매수진입 매도: 7일선이 우하향 중일때 봉이 7일선 위로 크로스업하여 T2 >= 25틱 이면 다음 봉에서 매도진입 3.손절 50틱 4.본절 수익이 50틱을 초과하면 손절값=진입값+2틱(매수시, 매도시는 -2틱) 으로 손절라인 이동 5.익절 수익이 100틱 이상이면 M1 = 7일선의 방향이 바뀐후 2개봉 연속 바뀐 방향 유지하면 청산 M2 = 3회 연속 직전 봉의 저점을 돌파하면 3회째 저점 돌파후 즉시 청산(매수진입시) 3회 연속 직전 봉의 고점을 돌파하면 3회째 고점 돌파후 즉시 청산(매도진입시) 이라고 할때 M1 또는 M2 중에서 먼저 발생하는 쪽을 택하여 청산 6.수익 익절, 손절 표시 출력