커뮤니티
부탁드립니다
2026-03-04 21:31:37
79
글번호 230901
ai에 의뢰를 했으나 기울기 비율이 적용되지 않다 보니 신호가 빈번하게 발생하여 사용이 어렵네요
일목전환선의 기울기 비율 0.4를 기준으로
1)
- 직전 상승전환 저점보다 현재 상승전환 저점이 높으면 매수
- 직전 하락전환 고점보다 현재 하락전환 고점이 낮으면 매도
- 교차 신호말고 조건이 맞을때 마다 신호가 나오게
2)
-매수신호 발생시 신호직전 저점과 매수신호 캔들의 저점을 계산한 손절틱수 표시(저점 라인에 표시)
-매도신호 발생시 신호직전 고점과 매도신호 캔들의 고점을 계산한 손절틱수 표시(고점 라인에 표시)
답변 1
예스스탁 예스스탁 답변
2026-03-05 11:25:49
안녕하세요
예스스탁입니다.
기준값으로 전환선을 사용하는 지그재그(전환율 0.5%)를 계산해서
진입하는 내용으로 작성해 드립니다.
input : Rate(0.5);
Array : HD[10](0),HT[10](0),HV[10](0); //고점 날짜, 시간, 가격 저장할 배열
Array : LD[10](0),LT[10](0),LV[10](0); //저점 날짜, 시간, 가격 저장할 배열
var : cnt(0),전환선(0);
var : UpTrend(false),DownTrend(False),Trend(0);
var : ZigZagTL(0),TL(0),TX(0);
전환선 = (highest(H,9)+lowest(L,9))/2;
if CurrentBar == 1 Then
{
HD[0] = sDate;
HT[0] = sTime;
HV[0] = 전환선;
LD[0] = sDate;
LT[0] = sTime;
LV[0] = 전환선;
}
Else if CurrentBar > 1 Then
{
UpTrend = 전환선 >= LV[0]*(1+Rate/100);
DownTrend = 전환선 <= HV[0]*(1-Rate/100);
if trend <= 0 and UpTrend == true Then
{
trend = 1;
For cnt = 9 DownTo 1
{
HD[cnt] = HD[cnt-1];
HT[cnt] = HT[cnt-1];
HV[cnt] = HV[cnt-1];
}
HD[0] = sDate;
HT[0] = sTime;
HV[0] = 전환선;
ZigZagTL = TL_New(LD[0],LT[0],LV[0],HD[0],HT[0],HV[0]);
TL_SetColor(ZigZagTL,Red);
TL_SetSize(ZigZagTL,1);
IF LV[1] > 0 and LV[0] > LV[1] Then
{
Buy("b");
var1 = LV[0];
var11 = abs(L-LV[0])/PriceScale;
TL = TL_New(LD[0],LT[0],var1,sDate,sTime,var1);
TL_SetColor(TL,Red);
TX = Text_New(LD[0],LT[0],var1,NumToStr(var11,0));
Text_SetStyle(TX,2,0);
}
}
Else if trend >= 0 and DownTrend Then
{
trend = -1;
For cnt = 9 DownTo 1
{
LD[cnt] = LD[cnt-1];
LT[cnt] = LT[cnt-1];
LV[cnt] = LV[cnt-1];
}
LD[0] = sDate;
LT[0] = sTime;
LV[0] = 전환선;
ZigZagTL = TL_New(HD[0],HT[0],HV[0],LD[0],LT[0],LV[0]);
TL_SetColor(ZigZagTL,Blue);
TL_SetSize(ZigZagTL,1);
if HV[1] > 0 and HV[0] < HV[1] Then
{
Sell("s");
var2 = HV[0];
var22 = abs(HV[0]-H)/PriceScale;
TL = TL_New(HD[0],HT[0],HV[0],sDate,sTime,var2);
TL_SetColor(TL,Blue);
TX = Text_New(LD[0],LT[0],var2,NumToStr(var22,0));
Text_SetStyle(TX,2,1);
}
}
Else
{
if trend == 1 Then
{
if 전환선 > HV[0] Then
{
HD[0] = sDate;
HT[0] = sTime;
HV[0] = 전환선;
TL_SetEnd(ZigZagTL,HD[0],HT[0],HV[0]);
}
}
if trend == -1 Then
{
if 전환선 < LV[0] Then
{
LD[0] = sDate;
LT[0] = sTime;
LV[0] = 전환선;
TL_SetEnd(ZigZagTL,LD[0],LT[0],LV[0]);
}
}
}
}
if MarketPosition == 1 Then
{
TL_SetEnd(TL,sDate,sTime,var1);
Text_SetLocation(TX,sdate,sTime,var1);
}
if MarketPosition == -1 Then
{
TL_SetEnd(TL,sDate,sTime,var2);
Text_SetLocation(TX,sdate,sTime,var2);
}
즐거운 하루되세요