답변완료
안녕하세요, 수식 부탁드립니다
안녕하세요, 수식 부탁드립니다
Price Channel 입니다
INPUT : LENGTH(10);
VAR : TCHAN(0), BCHAN(0);
TCHAN = HIGHEST(HIGH, LENGTH)[1];
BCHAN = LOWEST(LOW, LENGTH)[1];
PLOT1(TCHAN, "TOP");
PLOT2(BCHAN, "BOT");
ㄱ, 10개의 TCHAN 값(=수치)가 같으면 매도
ㄴ, 10개의 BCHAN 값(=수치)가 같으면 매수
감사합니다
항상
건강하시고 행복하세요
2025-04-25
273
글번호 190432
시스템
답변완료
수식 수정 부탁드립니다...
안녕하세요...
먼저 작성해주신 수식 감사하게 잘 사용 하고 있습니다...
그런데 매수, 매도 시스템 전부 시스템성능 보고서와 전략실행 차트에서 수익과 손실을 잘못 인식 하는것 같습니다...
수익이 발생하여도 손실로 표시 되기도 하고 손실이 발생하여도 수익으로 표시 되기도 합니다...
그리고 시스템 성능 보고서에서 수익 손실 포인트도 오류가 나는것 같습니다...
확인 부탁드립니다...
감사합니다...
아래는 수식 원본 입니다...
안녕하세요
예스스탁입니다.
당일청산은 임의로 05시30분으로 지정했습니다.
1. 매수
input : Tick(10);
var : TT(0),T1(0),entry(0);
var1 = PriceScale*tick;
TT = TotalTrades;
if sDate != sDate[1] Then
SetStopEndofday(053000);
if Bdate != Bda1te[1] Then
{
SetStopEndofday(0);
T1 = TT[1];
}
entry = IFf(MarketPosition == 0,TT-T1,TT-T1+1);
if MarketPosition == 0 Then
{
if entry == 0 Then
Buy("b1",AtLimit,DayOpen-PriceScale*160);
if entry == 1 Then
{
if IsExitName("bp1",1) == true Then
Buy("b21",AtLimit,DayOpen-PriceScale*260);
if IsExitName("bl1",1) == true Then
Buy("b22",AtStop,DayOpen-PriceScale*260);
}
}
if MarketPosition == 1 Then
{
if entry == 1 Then
{
ExitLong("bp1",AtLimit,EntryPrice+PriceScale*40);
ExitLong("bl1",AtStop,EntryPrice-PriceScale*180);
}
if entry == 2 Then
{
ExitLong("bp2",AtLimit,EntryPrice+PriceScale*50);
ExitLong("bl2",AtStop,EntryPrice-PriceScale*180);
}
}
2. 매도
input : Tick(10);
var : TT(0),T1(0),entry(0);
var1 = PriceScale*tick;
TT = TotalTrades;
if sDate != sDate[1] Then
SetStopEndofday(053000);
if Bdate != Bda1te[1] Then
{
SetStopEndofday(0);
T1 = TT[1];
}
entry = IFf(MarketPosition == 0,TT-T1,TT-T1+1);
if MarketPosition == 0 Then
{
if entry == 0 Then
Sell("s1",AtLimit,DayOpen+PriceScale*160);
if entry == 1 Then
{
if IsExitName("sp1",1) == true Then
Sell("s21",AtLimit,DayOpen+PriceScale*260);
if IsExitName("sl1",1) == true Then
Sell("s22",AtStop,DayOpen+PriceScale*260);
}
}
if MarketPosition == -1 Then
{
if entry == 1 Then
{
ExitShort("sp1",AtLimit,EntryPrice-PriceScale*40);
ExitShort("sl1",AtStop,EntryPrice+PriceScale*180);
}
if entry == 2 Then
{
ExitShort("sp2",AtLimit,EntryPrice-PriceScale*50);
ExitShort("sl2",AtStop,EntryPrice+PriceScale*180);
}
}
즐거운 하루되세요
> 황금호랑이 님이 쓴 글입니다.
> 제목 : 수식 부탁드립니다...
> 시스템을 매수용 따로 매도용 따로 부탁드립니다...
틱으로 계산했는데...틱으로 계산이 안되는 경우 포인트로 해주셔도 괜찮습니다...
10틱= 1포인트
매수용 (해외선물 골드)
1차 매수 조건
당일시가 대비 -160틱 하락하면 매수 진입
1차 매도청산 조건
익절 1차 진입가 대비 +40틱
손절 1차 진입가 대비 -180틱
2차 매수조건
1차 진입 조건에서 익절이 난 경우
당일시가 대비 -260틱 하락 하면 매수 진입
1차 진입 조건에서 손절이 난 경우(시가대비 -340틱 하락 한 경우)
당일 시가 대비 -260틱 하락 하면 매수 진입 하여야 하는데 이미 -340틱이 났으므로
기다렸다가 손절가 대비 +80틱 오르면 매수진입
2차 청산조건
익절 2차 진입가 대비 +50틱
손절 2차 진입가 대비 -180틱
1차 매수조건에서 익절 혹은 손절이 된 경우 1차 매수조건에서는 진입하지 않고
2차 매수조건에서만 진입
2차 익절 혹은 손절 이후 매매 중지
매도용 (해외선물 골드)
1차 매도 조건
당일시가 대비 +160틱 상승하면 매도 진입
1차 매수청산 조건
익절 1차 진입가 대비 -40틱
손절 1차 진입가 대비 +180틱
2차 매도조건
1차 진입 조건에서 익절이 난 경우
당일시가 대비 +260틱 상승 하면 매도 진입
1차 진입 조건에서 손절이 난 경우(시가대비 +340틱 상승 한 경우)
당일 시가 대비 +260틱 상승 하면 매도 진입 하여야 하는데 이미 +340틱이 났으므로
기다렸다가 손절가 대비 -80틱 하락 매도진입
2차 청산조건
익절 2차 진입가 대비 -50틱
손절 2차 진입가 대비 +180틱
1차 매도조건에서 익절 혹은 손절이 된 경우 1차 매도조건에서는 진입하지 않고
2차 매도조건에서만 진입
2차 익절 혹은 손절 이후 매매 중지
감사합니다...
2025-04-25
271
글번호 190431
시스템
답변완료
수식 확인 좀 부탁 드립니다.
파라볼릭매수신호중에 익절하면 같은 매수신호에는 재진입하지 않는다.는 식을 아래와 같이 주셨는데 여전히 매수신호중에 여전히 재진입이 됩니다. 수정 좀 부탁드립니다.
Input : af(0.02), maxAF(0.2);
Var : Sarv(0);
Sarv = sar(af,maxAF);
If crossup(c,Sarv) Then
{
Buy();
}
If CrossDown(c,Sarv) Then
{
Sell();
}
참고로 익절은
if 200 < H-Sarv Then
ExitLong("bx2",AtStop,Sarv+200);
식으로 익절하였습니다.
2025-04-25
271
글번호 190421
시스템
답변완료
검색식 부탁드립니다. _(_ _)_
항상 도와주심에 감사드립니다. _(__)_
5봉전에서 아래의 수식을 만족시키는 봉이 출현하고 0봉전에서 5봉전 고가를 돌파하는 종목 검색식을 부탁드립니다.
수식4개 각각 검색식이 되겠습니다. _(__)_
수식1
var : ii(0),HO(0);
var : MM(0),KK(0),MO(0),mx(0);
var : M1(0),M2(0),M3(0),M4(0),M5(0),M6(0);
var : M7(0),M8(0),M9(0),M10(0),M11(0),M12(0);
MM = floor(date/100);
if MM != MM[1] Then
{
MO = O;
M1 = KK[1];
M2 = M1[1];
M3 = M2[1];
M4 = M3[1];
M5 = M4[1];
M6 = M5[1];
M7 = M6[1];
M8 = M7[1];
M9 = M8[1];
M10 = M9[1];
M11 = M10[1];
M12 = M11[1];
mx = Max(M1, M2, M3, M4, M5,M6, M7, M8, M9, M10, M11, M12);
}
KK = iff(MO > C, MO, 0);
if HO > 0 and C > HO and Index < ii+5 Then
{
HO = 0;
Find(1);
}
if mx > 0 and CrossUp(C,mx) Then
{
ii = Index;
if C < O Then
HO = O;
Else
HO = 0;
}
Else
{
if ii > 0 and Index <= ii+5 Then
{
if C < O and (HO == 0 or (HO > 0 and O > HO)) Then
HO = O;
}
}
수식2
var : m5(0),m20(0),크로스업(False),hh(0),H_high(0),ll(0),L_sum(0),ls(0),조건(false),cnt(-1);
M5 = ma(c,5);
M20 = ma(c,20);
크로스업 = crossup(M5,M20);
if 크로스업 == true Then
{
hh = h;
var1 = L_sum[1];
cnt = 0;
}
Else
{
if hh > 0 and h > hh Then
hh = h;
}
if HH==HH[1] && HH > H Then
H_high = HH;
LL = iff(M20>L, 1, 0);
L_sum = Accum(LL);
Ls = L_sum-var1;
조건 = CrossUp(c, H_High) && Ls>0;
if 조건 == true Then
{
if cnt >= 0 Then
{
cnt = cnt+1;
if cnt == 1 Then
Find(1);
}
}
수식3
var : 당월시가(0),전월시가(0);
var : 당월종가(0),전월종가(0);
if sDate > sDate[1]+30 Then
{
당월시가 = O;
전월시가 = 당월시가[1];
전월종가 = 당월종가[1];
}
당월종가 = C;
if 전월시가 > 0 Then
{
var1 = ((전월시가+전월종가)/2 + 당월시가)/2;
if CrossUp(C,var1) Then
Find(1);
}
수식4
var1 = EnvelopeDown(20,10);
if CrossUp(C,var1)
Then
Find(1);
2025-04-25
191
글번호 190407
종목검색