예스스탁
예스스탁 답변
2022-04-01 09:57:26
안녕하세요
예스스탁입니다.
input : StartTime(90000),EndTime(150000);
input : 당일진입횟수(3),당일수익틱수(100),당일손실틱수(100);
var : Tcond(false),N1(0),dayPl(0),당일수익(0),당일손실(0),Xcond(false),entry(0);
당일수익 = PriceScale*당일수익틱수;
당일손실 = PriceScale*당일손실틱수;
IF Endtime > starttime Then
SetStopEndofday(Endtime);
Else
{
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;
Xcond = false;
N1 = NetProfit;
entry = 0;
IF Endtime <= starttime Then
{
SetStopEndofday(0);
}
}
daypl = NetProfit-N1;
if TotalTrades > TotalTrades[1] then
{
if daypl >= 당일수익 or daypl <= -당일손실 Then
Xcond = true;
if (IsExitName("dbp",1) == true or IsExitName("dbl",1) == true or
IsExitName("dsp",1) == true or IsExitName("dsl",1) == true) then
Xcond = true;
}
if (MarketPosition != 0 and MarketPosition != MarketPosition[1]) or
(MarketPosition == MarketPosition[1] and TotalTrades > TotalTrades[1]) Then
entry = entry+1;
var1 = ma(C,5);
Var2 = ma(C,20);
if Tcond == true and Xcond == False then
{
if CrossUp(var1,Var2) Then
{
if entry < 당일진입횟수 Then
buy("b");
Else
ExitShort("sx");
}
if CrossDown(var1,Var2) Then
{
if entry < 당일진입횟수 Then
sell("s");
Else
ExitLong("bx");
}
}
if MarketPosition == 1 then{
ExitLong("dbp",atlimit,EntryPrice+((당일수익-daypl)/CurrentContracts));
ExitLong("dbl",AtStop,EntryPrice-((당일손실+daypl)/CurrentContracts));
}
if MarketPosition == -1 then{
ExitShort("dsp",atlimit,EntryPrice-((당일수익-daypl)/CurrentContracts));
ExitShort("dsl",AtStop,EntryPrice+((당일손실+daypl)/CurrentContracts));
}
즐거운 하루되세요
> 수원 님이 쓴 글입니다.
> 제목 : 안녕하세요
> 이평선5가이평선20골드매수
이평선5가이평선20골드매도
매매시간09시부터15시
당일손실 100틱이나면 강제청산후매매정지
당일이익 100틱이나면 강제청산후매매정지
매매횟수3회후강제청산후매매정지
부탁드려요