안녕하세요, 진입이 전혀 이뤄지지 않아 확인 부탁드립니다. 감사합니다.
// ------------------------------
// 1단계: 20일 이동평균 기준 상승 추세 판단
// ------------------------------
Vars: LTrend(False), Pullback(False);
LTrend = Close > MA(Close, 20); // 현재 종가가 20일 이동평균보다 높을 때 상승 추세로 간주
// ------------------------------
// 2단계: 되돌림 판단 및 기준봉 설정
// ------------------------------
Vars: upCount(0), downCount(0);
Vars: 기준생성(False), 기준봉High(0), 기준봉Low(0);
If LTrend == True Then
{
// 양봉인 경우
If Close > Open Then
{
upCount = upCount + 1;
downCount = 0; // 음봉 카운터 초기화
}
// 음봉인 경우
Else
{
If upCount >= 2 and 기준생성 == False and downCount < 8 Then
{
downCount = downCount + 1;
// 최근 양봉 2개의 저가보다 낮은 저가 발생 시 기준봉 설정
If Low < MinList(Low[1], Low[2]) Then
{
기준봉Low = Low;
기준봉High = High;
기준생성 == True;
}
}
Else
{
downCount = downCount + 1;
}
}
// 추세 실패 판단: 음봉이 8개 이상 지속되면 리셋
If downCount >= 8 Then
{
기준생성 = False;
upCount = 0;
downCount = 0;
}
// ------------------------------
// 매수 조건: 기준봉 고가 돌파
// ------------------------------
If 기준생성 and High > 기준봉High Then
{
Buy("Buy",AtLimit,기준봉High,1);
// 리셋
기준생성 = False;
upCount = 0;
downCount = 0;
}
}
Else
{
// 상승 추세가 아니면 전체 상태 리셋
upCount = 0;
downCount = 0;
기준생성 = False;
}
input:PT(5);
SetStopLoss(PT,PercentStop);
SetStopProfittarget(PT*3,PercentStop);
답변 1
예스스탁
예스스탁 답변
2025-06-09 19:58:03
안녕하세요
예스스탁입니다.
If Low < MinList(Low[1], Low[2]) Then
{
기준봉Low = Low;
기준봉High = High;
기준생성 == True;
}
변수에 값을 저장할 때 =은 하나만 사용합니다.
==는 같다라는 표현입니다.
// ------------------------------
// 1단계: 20일 이동평균 기준 상승 추세 판단
// ------------------------------
Vars: LTrend(False), Pullback(False);
LTrend = Close > MA(Close, 20); // 현재 종가가 20일 이동평균보다 높을 때 상승 추세로 간주
// ------------------------------
// 2단계: 되돌림 판단 및 기준봉 설정
// ------------------------------
Vars: upCount(0), downCount(0);
Vars: 기준생성(False), 기준봉High(0), 기준봉Low(0);
If LTrend == True Then
{
// 양봉인 경우
If Close > Open Then
{
upCount = upCount + 1;
downCount = 0; // 음봉 카운터 초기화
}
// 음봉인 경우
Else
{
If upCount >= 2 and 기준생성 == False and downCount < 8 Then
{
downCount = downCount + 1;
// 최근 양봉 2개의 저가보다 낮은 저가 발생 시 기준봉 설정
If Low < MinList(Low[1], Low[2]) Then
{
기준봉Low = Low;
기준봉High = High;
기준생성 = True;
}
}
Else
{
downCount = downCount + 1;
}
}
// 추세 실패 판단: 음봉이 8개 이상 지속되면 리셋
If downCount >= 8 Then
{
기준생성 = False;
upCount = 0;
downCount = 0;
}
// ------------------------------
// 매수 조건: 기준봉 고가 돌파
// ------------------------------
If 기준생성 and High > 기준봉High Then
{
Buy("Buy",AtLimit,기준봉High,1);
// 리셋
기준생성 = False;
upCount = 0;
downCount = 0;
}
}
Else
{
// 상승 추세가 아니면 전체 상태 리셋
upCount = 0;
downCount = 0;
기준생성 = False;
}
input:PT(5);
SetStopLoss(PT,PercentStop);
SetStopProfittarget(PT*3,PercentStop);
즐거운 하루되세요
> sewzie 님이 쓴 글입니다.
> 제목 : 수식 확인 부탁드립니다
> 안녕하세요, 진입이 전혀 이뤄지지 않아 확인 부탁드립니다. 감사합니다.
// ------------------------------
// 1단계: 20일 이동평균 기준 상승 추세 판단
// ------------------------------
Vars: LTrend(False), Pullback(False);
LTrend = Close > MA(Close, 20); // 현재 종가가 20일 이동평균보다 높을 때 상승 추세로 간주
// ------------------------------
// 2단계: 되돌림 판단 및 기준봉 설정
// ------------------------------
Vars: upCount(0), downCount(0);
Vars: 기준생성(False), 기준봉High(0), 기준봉Low(0);
If LTrend == True Then
{
// 양봉인 경우
If Close > Open Then
{
upCount = upCount + 1;
downCount = 0; // 음봉 카운터 초기화
}
// 음봉인 경우
Else
{
If upCount >= 2 and 기준생성 == False and downCount < 8 Then
{
downCount = downCount + 1;
// 최근 양봉 2개의 저가보다 낮은 저가 발생 시 기준봉 설정
If Low < MinList(Low[1], Low[2]) Then
{
기준봉Low = Low;
기준봉High = High;
기준생성 == True;
}
}
Else
{
downCount = downCount + 1;
}
}
// 추세 실패 판단: 음봉이 8개 이상 지속되면 리셋
If downCount >= 8 Then
{
기준생성 = False;
upCount = 0;
downCount = 0;
}
// ------------------------------
// 매수 조건: 기준봉 고가 돌파
// ------------------------------
If 기준생성 and High > 기준봉High Then
{
Buy("Buy",AtLimit,기준봉High,1);
// 리셋
기준생성 = False;
upCount = 0;
downCount = 0;
}
}
Else
{
// 상승 추세가 아니면 전체 상태 리셋
upCount = 0;
downCount = 0;
기준생성 = False;
}
input:PT(5);
SetStopLoss(PT,PercentStop);
SetStopProfittarget(PT*3,PercentStop);