예스스탁
예스스탁 답변
2022-03-10 13:30:36
안녕하세요
예스스탁입니다.
input : 전환선기간(9),기준선기간(26),선행스팬2기간(52),시작시간(080000),종료시간(220000);
Var : 기준선(0), 전환선(0), 선행스팬1(0), 선행스팬2(0),구름상단(0),구름하단(0),Tcond(false);
전환선 = (Highest(H, 전환선기간) + Lowest(L, 전환선기간)) / 2;
기준선 = (Highest(H, 기준선기간) + Lowest(L, 기준선기간)) / 2;
선행스팬1 = (전환선[25] + 기준선[25]) / 2 ;
선행스팬2 = (Highest(H, 선행스팬2기간)[25] + Lowest(L, 선행스팬2기간)[25]) / 2;
구름상단 = max(선행스팬1,선행스팬2);
구름하단 = Min(선행스팬1,선행스팬2);
if (sdate != sdate[1] and stime >= 시작시간) or
(sdate == sdate[1] and stime >= 시작시간 and stime[1] < 시작시간) Then
Tcond = true;
if (sdate != sdate[1] and stime >= 종료시간) or
(sdate == sdate[1] and stime >= 종료시간 and stime[1] < 종료시간) Then{
Tcond = false;
if MarketPosition == 1 Then
exitlong();
if MarketPosition == -1 Then
ExitShort();
}
if Tcond == true then{
if crossup(전환선,구름상단) Then
buy();
if CrossDown(전환선,구름하단) Then
sell();
}
input : 틱(20);
var : RR(0), TL(0),TX1(0),TX2(0);
var : bTL1(0),bTL2(0),bTL3(0);
var : sTL1(0),sTL2(0),sTL3(0);
if MarketPosition == 1 Then
{
rr = Floor((highest(H,BarsSinceEntry)-EntryPrice)/(PriceScale*틱));
if rr > rr[1] Then
{
tx1 = Text_New(sdate,stime,H,NumToStr(RR*틱,0)+"틱");
Text_SetStyle(tx1,1,2);
}
TL_Delete(bTL1);
bTL1 = TL_New(EntryDate,EntryTime,L[BarsSinceEntry],sdate,stime,L[BarsSinceEntry]);
Text_Delete(Tx2);
tx2 = Text_New(sdate,stime,L[BarsSinceEntry],NumToStr(L[BarsSinceEntry],2));
TL_Delete(bTL2);
bTL2 = TL_New(EntryDate,EntryTime,L[BarsSinceEntry]-PriceScale*20,sdate,stime,L[BarsSinceEntry]-PriceScale*20);
TL_SetColor(bTL2,RED);
TL_Delete(bTL3);
bTL3 = TL_New(EntryDate,EntryTime,L[BarsSinceEntry]+PriceScale*50,sdate,stime,L[BarsSinceEntry]+PriceScale*50);
TL_SetColor(bTL3,BLUE);
}
if MarketPosition == -1 Then
{
rr = Floor((EntryPrice-lowest(L,BarsSinceEntry))/(PriceScale*틱));
if rr > rr[1] Then
{
tx1 = Text_New(sdate,stime,H,NumToStr(RR*틱,0)+"틱");
Text_SetStyle(tx1,1,2);
}
TL_Delete(sTL1);
sTL1 = TL_New(EntryDate,EntryTime,H[BarsSinceEntry],sdate,stime,H[BarsSinceEntry]);
Text_Delete(Tx2);
tx2 = Text_New(sdate,stime,H[BarsSinceEntry],NumToStr(H[BarsSinceEntry],2));
TL_Delete(sTL2);
sTL2 = TL_New(EntryDate,EntryTime,H[BarsSinceEntry]+PriceScale*20,sdate,stime,H[BarsSinceEntry]+PriceScale*20);
TL_SetColor(sTL2,RED);
TL_Delete(sTL3);
sTL3 = TL_New(EntryDate,EntryTime,H[BarsSinceEntry]-PriceScale*50,sdate,stime,H[BarsSinceEntry]-PriceScale*50);
TL_SetColor(sTL3,BLUE);
}
즐거운 하루되세요
> gopang 님이 쓴 글입니다.
> 제목 : 문의 드립니다
> 수고 많으십니다
첨부한 수식 중 매수신호봉 저가기준 손절 20틱(레드선), 익절50틱(블루선) 라인
매도신호봉 고가기준 손절20(레드선)틱, 익절50틱(블루선) 라인
부탁드립니다
감사합니다~
input : 전환선기간(9),기준선기간(26),선행스팬2기간(52),시작시간(080000),종료시간(220000);
Var : 기준선(0), 전환선(0), 선행스팬1(0), 선행스팬2(0),구름상단(0),구름하단(0),Tcond(false);
전환선 = (Highest(H, 전환선기간) + Lowest(L, 전환선기간)) / 2;
기준선 = (Highest(H, 기준선기간) + Lowest(L, 기준선기간)) / 2;
선행스팬1 = (전환선[25] + 기준선[25]) / 2 ;
선행스팬2 = (Highest(H, 선행스팬2기간)[25] + Lowest(L, 선행스팬2기간)[25]) / 2;
구름상단 = max(선행스팬1,선행스팬2);
구름하단 = Min(선행스팬1,선행스팬2);
if (sdate != sdate[1] and stime >= 시작시간) or
(sdate == sdate[1] and stime >= 시작시간 and stime[1] < 시작시간) Then
Tcond = true;
if (sdate != sdate[1] and stime >= 종료시간) or
(sdate == sdate[1] and stime >= 종료시간 and stime[1] < 종료시간) Then{
Tcond = false;
if MarketPosition == 1 Then
exitlong();
if MarketPosition == -1 Then
ExitShort();
}
if Tcond == true then{
if crossup(전환선,구름상단) Then
buy();
if CrossDown(전환선,구름하단) Then
sell();
}
input : 틱(20);
var : RR(0), TL(0),TX1(0),TX2(0);
if MarketPosition == 1 Then
{
rr = Floor((highest(H,BarsSinceEntry)-EntryPrice)/(PriceScale*틱));
if rr > rr[1] Then{
tx1 = Text_New(sdate,stime,H,NumToStr(RR*틱,0)+"틱");
Text_SetStyle(tx1,1,2);
}
TL_Delete(TL);
TL_New(EntryDate,EntryTime,L[BarsSinceEntry],sdate,stime,L[BarsSinceEntry]);
Text_Delete(Tx2);
tx2 = Text_New(sdate,stime,L[BarsSinceEntry],NumToStr(L[BarsSinceEntry],2));
}
if MarketPosition == -1 Then
{
rr = Floor((EntryPrice-lowest(L,BarsSinceEntry))/(PriceScale*틱));
if rr > rr[1] Then{
tx1 = Text_New(sdate,stime,H,NumToStr(RR*틱,0)+"틱");
Text_SetStyle(tx1,1,2);
}
TL_Delete(TL);
TL_New(EntryDate,EntryTime,H[BarsSinceEntry],sdate,stime,H[BarsSinceEntry]);
Text_Delete(Tx2);
tx2 = Text_New(sdate,stime,H[BarsSinceEntry],NumToStr(H[BarsSinceEntry],2));
}