예스스탁
예스스탁 답변
2021-08-23 11:48:47
안녕하세요
예스스탁입니다.
input : P1(5),P2(20),p3(3),P4(120),P5(120);
input : sto1(12),sto2(26),sto3(5);
Input : trixp(12), sigPeriod(9);
INPUTS: LENGTH(5);
input : short(12),long(26),sig(9);
input : StartTime(223000),EndTime(025000);
Input : 당일수익틱수(100);
var : Tcond(false),mav3(0),mav4(0),dis(0);
var : mav1(0),mav2(0),stok(0),stod(0);
var : trixv(0),trixs(0),TEMA(0),macdo(0);
Var : N1(0),dayPl(0),당일수익(0),Xcond(false),CC(0);
if sDate != sDate[1] Then
SetStopEndofday(Endtime);
if (sdate != sdate[1] and stime >= EndTime) or
(sdate == sdate[1] and stime >= EndTime and stime[1] < EndTime) Then
Tcond = False;
if (sdate != sdate[1] and stime >= StartTime) or
(sdate == sdate[1] and stime >= StartTime and stime[1] < StartTime) Then
{
Tcond = true;
SetStopEndofday(0);
Xcond = false;
N1 = NetProfit;
}
당일수익 = PriceScale*당일수익틱수;
daypl = NetProfit-N1;
if TotalTrades > TotalTrades[1] then
{
if daypl >= 당일수익 Then
Xcond = true;
if IsExitName("dbp",1) == true or IsExitName("dsp",1) == true then
Xcond = true;
}
mav1 = ma(C,P1);
mav2 = ma(C,P2);
mav3 = ma(c,p3);
mav4 = ma(c,p4);
dis = Disparity(p5);
stok = StochasticsK(sto1,sto2);
stod = StochasticsD(sto1,sto2,sto3);
trixv = trix(trixp);
trixs = ema(trixv,sigPeriod);
TEMA = (3 * Ema(c,LENGTH)) - (3 * Ema(Ema(c,LENGTH),LENGTH)) +
(Ema(Ema(Ema(c,LENGTH),LENGTH),LENGTH));
macdo = macd_osc(short,long,sig);
var1 = 0;
var2 = 0;
if stok > stod Then
var1 = var1+1;
if trixv > trixs Then
var1 = var1+1;
if c > tema Then
var1 = var1+1;
if macdo > 0 Then
var1 = var1+1;
if stok < stod Then
var2 = var2+1;
if trixv < trixs Then
var2 = var2+1;
if c < tema Then
var2 = var2+1;
if macdo < 0 Then
var2 = var2+1;
if Tcond == true and Xcond == False Then
{
if crossup(mav1,mav2) and var1 >= 3 Then
{
if C < mav4 and dis < 100 Then
Sell("s2");
Else
buy("b1");
}
if CrossDown(mav1,mav2) and var2 >= 3 Then
{
if C > mav4 and dis > 100 Then
Buy("b2");
Else
sell("s1");
}
if MarketPosition == 1 then
{
ExitLong("dbp",atlimit,EntryPrice+((당일수익-daypl)/CurrentContracts));
if CrossDown(mav3,mav4) Then
ExitLong("bx1");
if IsEntryName("b3") == true and CrossDown(mav1,mav2) Then
ExitLong("bx2");
}
if MarketPosition == -1 then
{
ExitShort("dsp",atlimit,EntryPrice-((당일수익-daypl)/CurrentContracts));
if CrossUp(mav3,mav4) Then
ExitShort("sx1");
if IsEntryName("s3") == true and CrossUp(mav1,mav2) Then
ExitShort("sx2");
}
if MarketPosition == 0 and IsExitName("bx1",1) == true and dis <= 100 and dis >= 99.80 Then
Sell("s3");
if MarketPosition == 0 and IsExitName("sx1",1) == true and dis >= 100 and dis <= 100.20 Then
Buy("b3");
}
if Tcond == true Then
{
CC = C;
}
if (NextBarSdate != sdate[1] and NextBarStime >= StartTime) or
(NextBarSdate == sdate[1] and NextBarStime >= StartTime and stime < StartTime) Then
{
if NextBarOpen > CC Then
Buy("b4",AtMarket);
if NextBarOpen < CC Then
Sell("s4",AtMarket);
}
즐거운 하루되세요
> 푸른 님이 쓴 글입니다.
> 제목 : 수식작성
> input : P1(5),P2(20),p3(3),P4(120),P5(120);
input : sto1(12),sto2(26),sto3(5);
Input : trixp(12), sigPeriod(9);
INPUTS: LENGTH(5);
input : short(12),long(26),sig(9);
input : StartTime(223000),EndTime(025000);
Input : 당일수익틱수(100);
var : Tcond(false),mav3(0),mav4(0),dis(0);
var : mav1(0),mav2(0),stok(0),stod(0);
var : trixv(0),trixs(0),TEMA(0),macdo(0);
Var : N1(0),dayPl(0),당일수익(0),Xcond(false);
if sDate != sDate[1] Then
SetStopEndofday(Endtime);
if (sdate != sdate[1] and stime >= EndTime) or
(sdate == sdate[1] and stime >= EndTime and stime[1] < EndTime) Then
Tcond = False;
if (sdate != sdate[1] and stime >= StartTime) or
(sdate == sdate[1] and stime >= StartTime and stime[1] < StartTime) Then
{
Tcond = true;
SetStopEndofday(0);
Xcond = false;
N1 = NetProfit;
}
당일수익 = PriceScale*당일수익틱수;
daypl = NetProfit-N1;
if TotalTrades > TotalTrades[1] then
{
if daypl >= 당일수익 Then
Xcond = true;
if IsExitName("dbp",1) == true or IsExitName("dsp",1) == true then
Xcond = true;
}
mav1 = ma(C,P1);
mav2 = ma(C,P2);
mav3 = ma(c,p3);
mav4 = ma(c,p4);
dis = Disparity(p5);
stok = StochasticsK(sto1,sto2);
stod = StochasticsD(sto1,sto2,sto3);
trixv = trix(trixp);
trixs = ema(trixv,sigPeriod);
TEMA = (3 * Ema(c,LENGTH)) - (3 * Ema(Ema(c,LENGTH),LENGTH)) +
(Ema(Ema(Ema(c,LENGTH),LENGTH),LENGTH));
macdo = macd_osc(short,long,sig);
var1 = 0;
var2 = 0;
if stok > stod Then
var1 = var1+1;
if trixv > trixs Then
var1 = var1+1;
if c > tema Then
var1 = var1+1;
if macdo > 0 Then
var1 = var1+1;
if stok < stod Then
var2 = var2+1;
if trixv < trixs Then
var2 = var2+1;
if c < tema Then
var2 = var2+1;
if macdo < 0 Then
var2 = var2+1;
if Tcond == true and Xcond == False Then
{
if crossup(mav1,mav2) and var1 >= 3 Then
{
if C < mav4 and dis < 100 Then
Sell("s2");
Else
buy("b1");
}
if CrossDown(mav1,mav2) and var2 >= 3 Then
{
if C > mav4 and dis > 100 Then
Buy("b2");
Else
sell("s1");
}
if MarketPosition == 1 then
{
ExitLong("dbp",atlimit,EntryPrice+((당일수익-daypl)/CurrentContracts));
if CrossDown(mav3,mav4) Then
ExitLong("bx1");
if IsEntryName("b3") == true and CrossDown(mav1,mav2) Then
ExitLong("bx2");
}
if MarketPosition == -1 then
{
ExitShort("dsp",atlimit,EntryPrice-((당일수익-daypl)/CurrentContracts));
if CrossUp(mav3,mav4) Then
ExitShort("sx1");
if IsEntryName("s3") == true and CrossUp(mav1,mav2) Then
ExitShort("sx2");
}
if MarketPosition == 0 and IsExitName("bx1",1) == true and dis <= 100 and dis >= 99.80 Then
Sell("s3");
if MarketPosition == 0 and IsExitName("sx1",1) == true and dis >= 100 and dis <= 100.20 Then
Buy("b3");
}
-------------------
상기수식어에 아래 내용을 추가를 하고자 합니다.
전일종가보다 당일시가가 높은경우 시가 buy 진입
전일종가보다 당일시가가 낮은경우 시가 sell 진입
익절 70틱 손절 10틱