답변완료
수식작성
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틱
2021-08-22
862
글번호 151682
시스템
답변완료
Re : 선긋기 부탁드립니다.
사용자가 장전에 임의의 시작가를 입력하여 타주기 일봉2일선을 연산하여 선이 그으지게 하는 수식입니다.
그 노고에 감사드리며, 추가로 3일선, 5일선도 함께 나타나게 해주시면 정말 감사하겠습니다.
번거롭게 해서 미안합니다.
input : 예상가(401),p(2),굵기(5),R(255),G(0),B(0);
var : cnt(0),sum(0),mav(0);
var : TL1(0),TL2(0),TL3(0),TL4(0);
if Index == 0 or (sTime >= 143000 and sTime[1] < 143000) Then
{
var1 = sDate;
Var2 = stime;
}
if NextBarStime == 154500 Then
{
sum = 0;
For cnt = 0 to P-1
{
if cnt == 0 Then
sum = sum + 예상가;
if cnt == 1 Then
sum = sum + NextBarOpen;
if cnt >= 2 Then
sum = sum + DayClose(cnt-1);
}
mav = sum/P;
if var1 > 0 and Var2 > 0 Then
{
TL1 = TL_New(var1,Var2,mav,sDate,sTime,mav);
TL_SetColor(TL1,RGB(R,G,B));
TL_SetSize(TL1, 굵기);
}
}
Else
{
if sTime < 113000 Then
{
TL_SetBegin(TL1,var1,Var2,mav);
TL_SetEnd(TL1,sDate,sTime,mav);
}
}
2021-08-22
1004
글번호 151681
지표
답변완료
수식 좀 부탁드립니다.
* 항상 많은 도움에 고맙 습니다.
* 아래 수식이 안되는데 수정 좀 부탁 드립니다.
즉 이상한 곳에 점이 찍힘니다. crossup 지점에 안찍히네요.
var1 = ma(c,5) ;
var2 = ma(c,20) ;
plot1(var1) ;
plot2(var2) ;
FixPlotShift(2,10) ;
var : TX55(0) ;
if crossup(Var1,var2) Then {TX55 = Text_New_Self(sdate,stime,var2,"●"); Text_SetStyle(TX55,2,2); Text_SetColor(TX55,RED); Text_SetSize(TX55,20); }
* 매번 고밥습니다
2021-08-21
1087
글번호 151677
지표