커뮤니티
수식조정부탁드립니다.
2017-06-21 14:48:45
148
글번호 110625
200틱차트기준 20일 이동평균선 사용
- 진입수량 1~2개...조정 가능하게요.
- 진입조건 : 매수는 시가보다 현재가가 높을때만 진입(양봉)
: 매도는 시가보다 현재가가 낮을때만 진입(음봉)
**** 시가 또는 제가 정하는 임의의 값도 가능한지요??? 해외선물같은경우도 나중에 해볼려구요****
매수진입(양봉일때만) - 전 2개봉의 종가가 이동평균선(20)과 같거나 크고 AND 현재봉에서 (현재가-이동평균선가격) < 10틱 이내일때 매수신호발생
매수청산 - 1. 전2개봉의 종가가 이평선보다 작고 (현재가 < 이평선 가격) 이면 청산
2. 또는 현재봉에서 (이평선가격-현재가) > 10틱이면 청산
매도진입(음봉일때만) - 전 2개봉의 종가가 이동평균선(20)과 같거나 작고 AND 현재봉에서 (이동평균선가격-현재가) < 10틱 이내일때 매도신호발생
매도청산 - 1. 전2개봉의 종가가 이평선보다 크고 (현재가 > 이평선 가격) 이면 청산
2. 또는 현재봉에서 (현재가-이평선가격) > 10틱이면 청산
-------------------------
당일 양봉에서는 매수만...음봉에서는 매도만 나오게 해야하는데......보니간 양봉자리에서도 매도신호가 막 나오는데 .. 어찌 고쳐야 하나요.. ㅜㅜ
c 값하고 dayopen 하고 비교해서 넣어야할거 같은데......추가좀 부탁드립니다.
아 그리고...전 2개봉을 비교할때....그전봉가격하고 이평선을 비교해야 하는데...보니간...모두 현재가하고 전2개봉을 비교하는거 같은데..ㅜㅜ 전2개봉은 그때가격(종가)하고 이평선을 비교하게 해주세요..
--------------------------------------------------
countif(C(0)>=mav,0) == 2 and
countif(C(1)>=mav,1) == 2 and
countif(C(2)>=mav,2) == 2 and
--------------------------------------------------
이런식으로 하면 맞는거나요? 근데 == 2 는 무슨의미인지요?
input : P(20);
var : mav(0);
mav = ma(c,P);
if C > O and
countif(C>=mav,2) == 2 and
C <= mav+PriceScale*10 then
buy("b");
if MarketPosition == 1 then
{
if countif(C<mav,3) == 3 Then
exitlong("bx1");
if C >= mav+PriceScale*10 Then
exitlong("bx2");
}
if C < O and
countif(C<=mav,2) == 2 and
C >= mav-PriceScale*10 then
sell("s");
if MarketPosition == -1 then
{
if countif(C>mav,3) == 3 Then
ExitShort("sx1");
if C <= mav-PriceScale*10 Then
ExitShort("sx2");
}
답변 1
예스스탁 예스스탁 답변
2017-06-21 15:00:50
안녕하세요
예스스탁입니다.
countif(조건,봉수)
countif함수는 조건을 지정해 해당 조건이 지정한 봉수동안 몇번발생했는지 카운트하는 함수입니다.
countif(C<mav,3)은
3봉동안 종가가 이평보다 작은 횟수가 몇번인지를 리턴하고
countif(C<mav,3) == 3
은 그 횟수가 3과 같다, 즉 3봉동안 3번 발생했으므로
3봉연속 종가가 이평보다 작다라는 표현입니다.
풀어서 작성하면 아래와 같습니다.
C < mav and C[1] < mav[1] and C[2] < mav[2]
시초가보다 위일때는 매수만, 아래일때는 매도만 발생하게 하고
countif내용은 모두 풀어서 작성해 드립니다.
input : P(20);
var : mav(0);
mav = ma(c,P);
if C > DayOpen and
C >= mav and C[1] >= mav[1] and
C <= mav+PriceScale*10 then
buy("b");
if MarketPosition == 1 then
{
if C < mav and C[1] < mav[1] and C[2] < mav[2] Then
exitlong("bx1");
if C >= mav+PriceScale*10 Then
exitlong("bx2");
}
if C < dayopen and
C <= mav and C[1] <= mav[1] and
C >= mav-PriceScale*10 then
sell("s");
if MarketPosition == -1 then
{
if C > mav and C[1] > mav[1] and C[2] > mav[2] Then
ExitShort("sx1");
if C <= mav-PriceScale*10 Then
ExitShort("sx2");
}
즐거운 하루되세요
> 노블사랑 님이 쓴 글입니다.
> 제목 : 수식조정부탁드립니다.
>
200틱차트기준 20일 이동평균선 사용
- 진입수량 1~2개...조정 가능하게요.
- 진입조건 : 매수는 시가보다 현재가가 높을때만 진입(양봉)
: 매도는 시가보다 현재가가 낮을때만 진입(음봉)
**** 시가 또는 제가 정하는 임의의 값도 가능한지요??? 해외선물같은경우도 나중에 해볼려구요****
매수진입(양봉일때만) - 전 2개봉의 종가가 이동평균선(20)과 같거나 크고 AND 현재봉에서 (현재가-이동평균선가격) < 10틱 이내일때 매수신호발생
매수청산 - 1. 전2개봉의 종가가 이평선보다 작고 (현재가 < 이평선 가격) 이면 청산
2. 또는 현재봉에서 (이평선가격-현재가) > 10틱이면 청산
매도진입(음봉일때만) - 전 2개봉의 종가가 이동평균선(20)과 같거나 작고 AND 현재봉에서 (이동평균선가격-현재가) < 10틱 이내일때 매도신호발생
매도청산 - 1. 전2개봉의 종가가 이평선보다 크고 (현재가 > 이평선 가격) 이면 청산
2. 또는 현재봉에서 (현재가-이평선가격) > 10틱이면 청산
-------------------------
당일 양봉에서는 매수만...음봉에서는 매도만 나오게 해야하는데......보니간 양봉자리에서도 매도신호가 막 나오는데 .. 어찌 고쳐야 하나요.. ㅜㅜ
c 값하고 dayopen 하고 비교해서 넣어야할거 같은데......추가좀 부탁드립니다.
아 그리고...전 2개봉을 비교할때....그전봉가격하고 이평선을 비교해야 하는데...보니간...모두 현재가하고 전2개봉을 비교하는거 같은데..ㅜㅜ 전2개봉은 그때가격(종가)하고 이평선을 비교하게 해주세요..
--------------------------------------------------
countif(C(0)>=mav,0) == 2 and
countif(C(1)>=mav,1) == 2 and
countif(C(2)>=mav,2) == 2 and
--------------------------------------------------
이런식으로 하면 맞는거나요? 근데 == 2 는 무슨의미인지요?
input : P(20);
var : mav(0);
mav = ma(c,P);
if C > O and
countif(C>=mav,2) == 2 and
C <= mav+PriceScale*10 then
buy("b");
if MarketPosition == 1 then
{
if countif(C<mav,3) == 3 Then
exitlong("bx1");
if C >= mav+PriceScale*10 Then
exitlong("bx2");
}
if C < O and
countif(C<=mav,2) == 2 and
C >= mav-PriceScale*10 then
sell("s");
if MarketPosition == -1 then
{
if countif(C>mav,3) == 3 Then
ExitShort("sx1");
if C <= mav-PriceScale*10 Then
ExitShort("sx2");
}
다음글
이전글