답변완료
함수요청
안녕하세요?
답변주신 아래 글번호 75497번을 매매에 응용하고 싶습니다.
국내 선물 3분봉으로 매매를 하되
- 현주가 > 전일주가이며, 현주가 > 20ma(주가) 이고, 누적미결제약정 > 60ma(누적미결제약정)이면 익봉시가에 매수 진입
- 매수 진입 이후 현주가 < 20ma(주가)이고, 누적미결제약정 < 60ma(누적미결제약정)이면 익봉시가에 매수청산
- 현주가 < 전일주가이며, 현주가 < 20ma(주가) 이고, 누적미결제약정 > 60ma(누적미결제약정)이면 익봉시가에 매도
- 매도 진입 이후 현주가 > 20ma(주가) 이고, 누적미결제약정 < 60ma(누적미결제약정)이면 익봉시가에 매도청산
- 15시 15분 모든 포지션 강제청산
- 당일 첫봉에서 진입신호가 발생되면 익봉부터 신호를 생성하고자 합니다.
- 진입기준으로 매매횟수를 최대 2회로 하고자 합니다.
====================================================================================
input : ntime(60),P(60);
var : S1(0),D1(0),TM(0),TF(0),cnt(0);
var : sum1(0),mav1(0);
Array : CC[100](0);
if Bdate != Bdate[1] Then
{
S1 = TimeToMinutes(stime);
D1 = sdate;
}
if D1 > 0 then
{
if sdate == D1 Then
TM = TimeToMinutes(stime)-S1;
Else
TM = TimeToMinutes(stime)+1440-S1;
TF = TM%ntime;
if Bdate != Bdate[1] or
(Bdate == Bdate[1] and ntime > 1 and TF < TF[1]) or
(Bdate == Bdate[1] and ntime > 1 and TM >= TM[1]+ntime) or
(Bdate == Bdate[1] and ntime == 1 and TM > TM[1]) Then
{
for cnt = 1 to 99
{
CC[cnt] = CC[cnt-1][1];
}
}
CC[0] = OI;
if CC[P-1] > 0 then
{
sum1 = 0;
for cnt = 0 to P-1
{
sum1 = sum1+CC[cnt];
}
mav1 = sum1/P;
plot1(mav1,"이평1");
}
}
2022-01-17
856
글번호 155525
시스템
답변완료
수식을 부탁드립니다
<음봉고가라인지표수식>
음봉의 고가라인 표시수식. 이 라인은 양봉의 종가상으로 돌파하는 경우에는
돌파한 양봉이후에 새로 발생하는 음봉중에서 가장 높은 고가로 라인이 새로 변경
표시되어야 한다
<매수종목검색식과 신호수식>
1.월봉기준으로 양봉으로 종가가 24선을 돌파할 때의 매수종목 검색식
2. 1번을 만족하면서 위 음봉고가지표라인을 돌파하는 매수종목 검색식
3. 2번을 만족하는 봉이 완성된이후 다음봉에서 음봉이 발생하는 종목검색식
추가적으로 최근6봉이내에 6이평선이 볼린저밴드(12,2) 중심선을 돌파한
경우가 1회이상 존재해야된다
<시스템매매신호>
위 3번의 매수종목신호 또는 종목이 검색되는 경우에 진입과 청산기중은 다음과 같다
진입은 매월 말일 장종료 동시호가에 시장가로 매수진입되게 한다.
금액기준(1백만원) 또는 수량기준(100주)을 변수로 설정변경가능하게 하고, 검색종목수가
많아 보유현금으로 전부 매수하지 못할때에는 매수우선순위는 시총순위>유보율기준>24선돌파순위로 한다
청산은 매수후 5%이상으로 하되 트레일링스탑기능을 활용하여 75,10%,15%,20%,30%기준으로 한다. 진입후 익월에 청산되지 못하고 다시 음봉으로 마감하는 경우에는 진입기준에 따라
말일 장마감동시호가시간에 시장가로 첫진입의 수량으로 진입하고, 익월 청산은 추가진입분은 5%에 청산하고 첫진입분은 앞의 트레일링 청산기준을 활용한다.
두번째 진입까지 청산되지 못한 경우에는 또다시 말일에 첫진입의 수량만큼 진입하고
청산은 두번째,세번째 진입분은 5%에 청산하고, 첫진입분은 트레일링기준을 활용한다.
세번째 진입까지 청산이 안된 경우에는 또다시 말일에 첫진입수량만큼 진입하고
추가 진입분은 5%에 청산대기하고, 첫진입분만 트레일링기준으로 청산한다
2022-01-17
1198
글번호 155510
종목검색
답변완료
부탁드립니다
피보나치 상단(76.4%)이 위로 3회 상향하면 매수 신호
피보나치 하단(23.6%)이 아래로 3회 하향하면 매도 신호가
나오는 시스템식 부닥드립니다
3회는 변경가능하도록 부탁드립니다 ex 1,2,3,4,5,6,7,8....
2022-01-17
963
글번호 155509
시스템
답변완료
지표 수식 부탁드립니다. (수정 의뢰 2)
담당자님, 안녕하세요.
항상 수고 많으십니다.
감사드립니다.
수식작성QA 75536 답변(RE)에서 작성해 주신 수식에 대하여
수정 보완을 부탁드립니다. (수정 의뢰 2)
직전 수정의뢰1 75561번 질문에서 이어지는 질문입니다.
작성해주신 75536 답변 수식을 실행해 보니 위 그림 파일과 같이 실행됩니다.
상단라인(굵은 청색선)은
MACD 오실레이터 값의 부호가 장시작 후 최초 1회 변경 될 때
장시작 부터 그 때(최초 1회 변경)까지의 최고점을
장마감까지 계속 표시합니다.
하단라인(굵은 분홍색선)은
MACD 오실레이터 값의 부호가 변경될 때 마다
장시작 부터 매번 변경되는 시점까지의 최저점을 계속 갱신해서
변경되는 수평라인을 표시합니다.
-----------------------------------------------------------------------------------
하단라인(굵은 분홍색선)도
MACD 오실레이터 값의 부호가 장시작 후 최초 1회 변경 될 때
장시작 부터 그 때(최초 1회 변경)까지 구간의 최저점을
장마감까지 계속 수평라인으로 표시(상단라인 처럼 표시)하도록
기존 지표수식 중 하단라인의 수정, 보완을 부탁드립니다.
(기존 상단라인은 계속 유지)
* 하단라인도 상단라인과 같은 로직으로 표시되도록 수정함.
즉,동일한 일자에서 고점과 저점 모두 높아지더라도
상단라인과 하단라인 모두 각각 최초 1회 변경까지 구간의 고점, 저점을
장마감까지 계속 수평라인으로 표시 되도록 수정
아래 지표1, 지표2 모두 수정해 주실 것을 부탁드립니다.
cf. 지표1 : 오실레이터 변경 시점 (즉, 오실레이터 골든크로스 또는 데드크로스 시점 포함)의
구간까지 고점 및 저점을 표시하는 수평라인
cf. 지표2 : 오실레이터 변경되기 직전 (즉, 오실레이터 골든크로스 또는 데드크로스 되기 직전)의
구간까지 고점 및 저점을 표시하는 수평라인
---------------------------------------------------------------------------------------
위와 같이 지표1과 지표2의 지표 수식의 수정, 보완을 부탁드립니다.
담당자님 노고와 답변에 미리 감사드립니다.
-------------------------------------------------------------------------------------------------
아래는 수식작성QA 75536 답변(RE)에서 작성해 주신 수식입니다.
작성에 참고하시기 바랍니다.
지표1
Input : short(12), long(26), signal(9),n(1);
Var : MACDv(0), MACDs(0),macdo(0),T(0),HH(0),LL(0);
MACDv = MACD(short, long);
MACDs = ema(MACDv,signal);
macdo = MACDv-MACDs;
if Bdate != Bdate[1] Then
{
T = 0;
var1 = 0;
Var2 = 0;
}
Else
{
if CrossUp(MACDO,0) or CrossDown(MACDO,0) Then
{
T = T+1;
if T == n Then
{
var1 = DayHigh;
} Var2 = DayLow;
}
}
if var1 > 0 and Var2 > 0 Then
{
Plot1(Var1);
plot2(Var2);
}
Else
{
NoPlot(1);
NoPlot(2);
}
---------------------------------------------------
지표2
Input : short(12), long(26), signal(9),n(1);
Var : MACDv(0), MACDs(0),macdo(0),T(0),HH(0),LL(0);
MACDv = MACD(short, long);
MACDs = ema(MACDv,signal);
macdo = MACDv-MACDs;
if Bdate != Bdate[1] Then
{
T = 0;
var1 = 0;
Var2 = 0;
}
Else
{
if CrossUp(MACDO,0) or CrossDown(MACDO,0) Then
{
T = T+1;
if T == n Then
{
var1 = DayHigh(0)[1];
} Var2 = DayLow(0)[1];
}
}
if var1 > 0 and Var2 > 0 Then
{
Plot1(Var1);
plot2(Var2);
}
Else
{
NoPlot(1);
NoPlot(2);
}
2022-01-17
1245
글번호 155508
지표
답변완료
지표 수식 부탁드립니다. (수정 의뢰 1)
담당자님, 안녕하세요.
항상 수고 많으십니다. 작성해주신 지표 수식을 잘 활용하고 있습니다.
감사드립니다.
수식작성QA 75536 답변에서 작성해 주신 수식에 대하여
수정 보완을 부탁드립니다. (수정 의뢰 1)
위의 수정의뢰 문서2 75562와 관련되는 질문입니다.
작성해주신 75536 답변 수식을 실행해 보니 위 그림 파일과 같이 실행됩니다.
상단라인(굵은 청색선)은
MACD 오실레이터 값의 부호가 장시작 후 최초 1회 변경 될 때
장시작 부터 그 때(최초 1회 변경)까지의 최고점을
장마감까지 계속 표시합니다.
하단라인(굵은 분홍색선)은
MACD 오실레이터 값의 부호가 변경될 때 마다
장시작 부터 매번 변경되는 시점까지의 최저점을 계속 갱신해서
변경되는 수평라인을 표시합니다.
-------------------------------------------------------------------------------------
상단라인(굵은 청색선)도
MACD 오실레이터 값의 부호가 변경될 때 마다
장시작 부터 변경되는 시점까지의 최고점을 계속 갱신해서
변경되는 수평라인을 표시(하단라인 처럼 표시)하도록
기존 지표수식 중 상단라인 부분의 수정, 보완을 부탁드립니다.
(기존 하단라인은 계속 유지)
* 상단라인도 하단라인과 같은 로직으로 표시되도록 수정함.
즉, 동일한 일자에서 고점과 저점 모두 높아지면
그 날짜에 상단라인과 하단라인 모두 각각 고점과 저점 변경을 반영하여
갱신되어 표시되도록 수정
아래 지표1, 지표2 모두 수정해 주실 것을 부탁드립니다.
cf. 지표1 : 오실레이터 변경 시점 (즉, 오실레이터 골든크로스 또는 데드크로스 시점 포함)의
구간까지 고점 및 저점을 표시하는 수평라인
cf. 지표1 : 오실레이터 변경되기 직전 (즉, 오실레이터 골든크로스 또는 데드크로스 되기 직전)의
구간까지 고점 및 저점을 표시하는 수평라인
--------------------------------------------------------------------------------------
위와 같이 지표1과 지표2의 지표 수식의 수정, 보완을 부탁드립니다.
담당자님 노고와 답변에 미리 감사드립니다.
----------------------------------------------------------------------------------------------------
아래는 수식작성QA 75536 답변(RE)에서 작성해 주신 수식입니다.
작성에 참고하시기 바랍니다.
지표1
Input : short(12), long(26), signal(9),n(1);
Var : MACDv(0), MACDs(0),macdo(0),T(0),HH(0),LL(0);
MACDv = MACD(short, long);
MACDs = ema(MACDv,signal);
macdo = MACDv-MACDs;
if Bdate != Bdate[1] Then
{
T = 0;
var1 = 0;
Var2 = 0;
}
Else
{
if CrossUp(MACDO,0) or CrossDown(MACDO,0) Then
{
T = T+1;
if T == n Then
{
var1 = DayHigh;
} Var2 = DayLow;
}
}
if var1 > 0 and Var2 > 0 Then
{
Plot1(Var1);
plot2(Var2);
}
Else
{
NoPlot(1);
NoPlot(2);
}
---------------------------------------------------
지표2
Input : short(12), long(26), signal(9),n(1);
Var : MACDv(0), MACDs(0),macdo(0),T(0),HH(0),LL(0);
MACDv = MACD(short, long);
MACDs = ema(MACDv,signal);
macdo = MACDv-MACDs;
if Bdate != Bdate[1] Then
{
T = 0;
var1 = 0;
Var2 = 0;
}
Else
{
if CrossUp(MACDO,0) or CrossDown(MACDO,0) Then
{
T = T+1;
if T == n Then
{
var1 = DayHigh(0)[1];
} Var2 = DayLow(0)[1];
}
}
if var1 > 0 and Var2 > 0 Then
{
Plot1(Var1);
plot2(Var2);
}
Else
{
NoPlot(1);
NoPlot(2);
}
2022-01-17
1092
글번호 155507
지표
답변완료
수정부탁드립니다.
안녕하십니까?
아래 Stochastics을
60분에서 타분봉 30분 Stochastics 나타나게하고 10분에서 타분봉 5분 Stochastics .
5에서 타분봉 1분Stochastics을 같이표시 되도록 부탁드립니다.
--------아래------
var : Period(12), Period1(24), Period2(9);
var : StoK(0),StoD(0);
StoK = StochasticsK(Period,Period1);
StoD = StochasticsD(Period,Period1,Period2);
Plot1(StoK, "StochasticsK",RED,def,20);
Plot2(StoD, "StochasticsD",BLUE,def,5);
PlotBaseLine1(20, "기준선20");
PlotBaseLine2(80, "기준선80");
2022-01-17
1154
글번호 155495
지표
답변완료
신호수식을 검색할수잇게 부탁드림니다
w=(highest(max(high(5),high(4),high(3),high(2),high(1),high),a*5)+lowest(max(high(5),high(4),high(3),high(2),high),a*5))/2;
d=shift((highest(high,longPeriod)+lowest(low,longPeriod))/2,midPeriod-1) ;
crossdown(w,d)
a 10
shortperiod 9
midperiod 26
longperiod 52
2022-01-17
1019
글번호 155492
종목검색