답변완료
수식 완성 부탁드립니다.
INPUT:
Period(20), // 장기 이동평균 기간
Period1(5), // 단기 이동평균 기간
Period2(20), // 중기 이동평균 기간
A(0); // 이격률 기준값
VAR:
maShort(0), // 단기 이동평균
maMid(0), // 중기 이동평균
maLong(0), // 장기 이동평균
Disparity(0), // 이격률
EntryPrice(0), // 매수 가격 저장
TradeOpen(FALSE), // 포지션 보유 여부
CurrTime(0), // 현재 시간 (HHMM)
ProfitRate(0), // 현재 수익률 (%)
ProfitPreserveActive(FALSE); // 수익보존 활성화 여부
// 이동평균 계산
maShort = MA(C, Period1);
maMid = MA(C, Period2);
maLong = MA(C, Period);
// 이격률 계산
Disparity = (maShort - maMid) / C * 100;
// 현재 시간 구하기 (HHMM)
CurrTime = TIME;
// --- 매수 조건 (09:00 ~ 11:40) ---
IF (CurrTime >= 900) AND (CurrTime <= 1140) THEN
BEGIN
IF (TradeOpen = FALSE) AND
// 이동평균 조건 (골든크로스 예시)
(C > maLong) AND (C[1] <= maLong[1]) AND
(maMid > maMid[1]) AND
(maMid[1] < maMid[2])
AND
// 이격률 조건
(Disparity > A) AND (Disparity[1] <= A)
THEN
BEGIN
BUY;
EntryPrice = C; // 진입가 기록
TradeOpen = TRUE;
ProfitPreserveActive = FALSE; // 새 거래 시작 시 초기화
END;
END;
// --- 포지션 오픈 상태에서 익절 / 손절 / 수익보존 / 강제매도 체크 ---
IF TradeOpen = TRUE THEN
BEGIN
ProfitRate = (C - EntryPrice) / EntryPrice * 100;
// 익절: +5% 이상 도달 시 매도
IF ProfitRate >= 5 THEN
BEGIN
SELL;
TradeOpen = FALSE;
ProfitPreserveActive = FALSE;
END
// 손절: -3% 이하 도달 시 매도
ELSE IF ProfitRate <= -3 THEN
BEGIN
SELL;
TradeOpen = FALSE;
ProfitPreserveActive = FALSE;
END
ELSE
BEGIN
// 수익보존 활성화 조건: 수익률이 1.2% 이상 도달한 경우
IF ProfitPreserveActive = FALSE AND ProfitRate >= 1.2 THEN
BEGIN
ProfitPreserveActive = TRUE;
END;
// 수익보존 조건: 수익보존 활성화 후 수익률이 1.2% 미만으로 떨어지면 매도
IF (ProfitPreserveActive = TRUE) AND (ProfitRate < 1.2) THEN
BEGIN
SELL;
TradeOpen = FALSE;
ProfitPreserveActive = FALSE;
END;
// 강제 매도: 15:10에 무조건 매도
IF CurrTime = 1510 THEN
BEGIN
SELL;
TradeOpen = FALSE;
ProfitPreserveActive = FALSE;
END;
END;
END;
2025-07-31
174
글번호 192911
시스템
답변완료
종목검색식 부탁드립니다
1. 아래수식을 참조(일봉기준)하여,
수식2) 가 주봉 20 이평(단순) 돌파할때 검색식 부탁드려요.
2. 아래수식을 참조하여(일봉기준),
주봉 20이평 (단순) 밑에서, 수식1) 이 수식2) 를 골든크로스
할때 종목검색식 부탁드려요.(단, 0봉전~10봉전 모든종목)
3. 수식1) 이 전일대비 상승할때 종목검색식 부탁드려요
4. 수식2) 가 전일대비 상승할때 종목검색식 부탁드립니다.
--------아래-----
(수식1)
tenkan=If(Sum(거래량, ConvPeriod) > 0,
Sum(((고가 + 저가) / 2) * 거래량, ConvPeriod) / Sum(거래량, ConvPeriod),
(Max(고가, ConvPeriod) + Min(저가, ConvPeriod)) / 2);
(수식2)
kijun = If(Sum(거래량, BasePeriod) > 0,
Sum(((고가 + 저가) / 2) * 거래량, BasePeriod) / Sum(거래량, BasePeriod),
(Max(고가, BasePeriod) + Min(저가, BasePeriod)) / 2);
(수식3)
shift(close,-25)
(수식4)
spanA = (tenkan + kijun) / 2;
//SHIFT(spanA,25)
(수식5)
spanB = tenkan=If(Sum(거래량, SpanBPeriod) > 0,
Sum(((고가 + 저가) / 2) * 거래량, SpanBPeriod) / Sum(거래량, SpanBPeriod),
(Max(고가, SpanBPeriod) + Min(저가, SpanBPeriod)) / 2);
//SHIFT(spanB,25)
- 지표조건설정
ConvPeriod : 9
BasePeriod : 26
SpanBPeriod : 52
Shift : 26
2025-08-01
165
글번호 192908
종목검색
답변완료
시스템 부탁 드립니다.
var : mav1(0),mav2(0),mav3(0),T1(0),T2(0),T3(0);
mav1 = ma(c,5);
mav2 = ma(c,20);
mav3 = ma(c,60);
if mav1 > mav1[1] Then
T1 = 1;
if mav1 < mav1[1] Then
T1 = -1;
if T1 == 1 and T1[1] != 1 Then
var1 = 0;
if T1 == 1 and C > O and (C+O)/2 >= mav1 and mav2 > mav2[1] and mav1 > mav2 Then{
var1 = var1+1;
if var1 == 1 Then
buy("5매수");
}
if T1 == -1 and T1[1] != -1 Then
var2 = 0;
if T1 == -1 and C < O and (C+O)/2 <= mav1 and mav2 < mav2[1] and mav1 < mav2 Then{
var2 = var2+1;
if var2 == 1 Then
sell("5매도");
}
위 수식에서 매수신호, 매도신호시 손절선을 표시하고 싶습니다.
매수신호가 나오면 신호나온 캔들 저점에 수평선
매도신호가 나오면 신호 나온 캔들 고점에 수평선 이렇게 선을 표시하고 싶습니다.
선은 마지막 신호에만 표시하고 지나간 신호는 선이 없었으면 합니다.
2025-07-31
165
글번호 192891
시스템