답변완료
문의
1) 청산수식 부탁드립니다.
리버스 거래이고
진입은 2번 입니다. ( 매수진입명 "a", 매도진입명 "b" )
매수신호가 먼저 나오면 매수거래 매도거래 하고 거래 종료
매도신호가 먼저 나오면 매도거래 매수거래 하고 거래 종료
매수신호가 먼저 나왔을 때와 매도신호가 먼저 나왔을 때를
구분하여 손절을 적용하고 싶습니다.
input : 손절1(1.25),손절2(2.50);
input : 손절3(2.50),손절4(1.25);
매수진입이 먼저 발생했을 때
진입명이 "a"
SetStopLoss(손절1,PointStop);
진입명이 "b"
SetStopLoss(손절2,PointStop);
매도진입이 먼저 발생했을 때
진입명이 "a"
SetStopLoss(손절3,PointStop);
진입명이 "b"
SetStopLoss(손절4,PointStop);
항상 고맙습니다.
2025-03-17
271
글번호 189268
시스템
답변완료
원 글(91906) 시스템 (수정) 문의 드립니다.
첫째, S&P500선물로 매매하려면,
S&P500선물을 기본차트로
나스닥100선물을 참조데이터로 추가하고 나에차식을 반대로 하여 적용하면 될까요?
원: 나에차 = R1-R2;
수정: 나에차 = R2-R1;
둘째, 당일손실틱수를 수정(사례에선 100을 2000으로)하려면 당일손실틱수 다음의 괄호 안 숫자를 바꿔주면 될까요? 만약 당일손실틱수가 넘어 청산됐다면 더 이상 매매가 없는 게 맞을까요?
이상을 반영하여 시스템 수식을 다음과 같이 수정하면 될까요?
input : 기준(1),일중최대진입횟수(2),당일손실틱수(2000);
var : ST(0,Data1),ET(0,Data1);
var : C1(0,Data1),C2(0,Data2);
var : R1(0,Data1),R2(0,Data2),나에차(0,Data1);
var : Tcond(False),count(0,Data1);
var : TT(0,Data1),N1(0,Data1),dayPL(0,Data1),Xcond(False),당일손실(0,Data1);
TT = TotalTrades;
if ET > 0 and Data1(sDate != sDate[1]) Then
SetStopEndofday(ET);
if data1(Bdate != Bdate[1]) Then
{
SetStopEndofday(0);
if sTime >= 80000 Then
{
ST = 233000;
ET = 060000;
}
Else
{
ST = 223000;
ET = 050000;
}
Xcond = False;
N1 = TT[1];
C1 = Data1(c[1]);
}
daypl = NetProfit-N1;
당일손실 = data1(PriceScale)*당일손실틱수;
if TotalTrades > TotalTrades[1] then
{
if daypl <= -당일손실 Then
Xcond = true;
if (IsExitName("dbl",1) == true or IsExitName("dsl",1) == true) then
Xcond = true;
}
if Data2(Bdate != Bdate[1]) Then
C2 = Data2(c[1]);
R1 = Data1((C-C1)/C1*100);
R2 = Data2((C-C2)/C2*100);
나에차 = R2-R1;
if data1(ET > 0 and
((sdate != sdate[1] and stime >= ET) or
(sdate == sdate[1] and stime >= ET and stime[1] < ET))) Then
{
Tcond = False;
}
if data1(ST > 0 and
((sdate != sdate[1] and stime >= ST) or
(sdate == sdate[1] and stime >= ST and stime[1] < ST))) Then
{
Tcond = true;
count = 0;
if MarketPosition == 0 and 나에차 >= 기준 then
{
count = count+1;
Buy();
}
if MarketPosition == 0 and 나에차 <= 기준 Then
{
count = count+1;
Sell();
}
}
Else
{
if Tcond == true and Xcond == False Then
{
if MarketPosition == 1 and 나에차 < 0 and 나에차[1] < 0 and count < 일중최대진입횟수 Then
{
count = count+1;
Sell("bs");
}
if MarketPosition == -1 and 나에차 > 0 and 나에차[1] > 0 and count < 일중최대진입횟수 Then
{
count = count+1;
Buy("sb");
}
if MarketPosition == 1 and 나에차 < 0 and 나에차[1] < 0 and count == 일중최대진입횟수 Then
{
ExitLong("bx");
}
if MarketPosition == -1 and 나에차 > 0 and 나에차[1] > 0 and count == 일중최대진입횟수 Then
{
ExitShort("sx");
}
}
}
if MarketPosition == 1 then
{
ExitLong("dbl",AtStop,EntryPrice-((당일손실+daypl)/CurrentContracts));
}
if MarketPosition == -1 then{
ExitShort("dsl",AtStop,EntryPrice+((당일손실+daypl)/CurrentContracts));
}
다시 한번 감사드립니다.
꾸벅^^
2025-03-17
762
글번호 189267
시스템
답변완료
검색식 문의 드립니다.
종목검색식 문의 드립니다.
Period1(9), Period2(13), Period3(3), Period4(3), Period5(6),Period6(12)
A=((RSI(Period1)-Lowest(RSI(Period1),Period2))
/(Highest(RSI(Period1),Period2)-(Lowest(RSI(Period1),Period2))));
B=avg(A,Period3);
X=avg(B,Period4);
Y=DEMA(X,Period5);
Z=TEMA(X,Period6);
Lowest(L,30,1)>= Lowest(L,5,1) && Y(1)>Z(1) && X(1)< 0.2 && Z(1)< 0.2
&& X(2)>X(1) && X(1)< X(0)
부탁드립니다.
2025-03-18
329
글번호 189265
종목검색