예스스탁
예스스탁 답변
2023-09-22 16:31:26
안녕하세요
예스스탁입니다.
1
매수진입은 현재 골드 구간이고 골드시점의 30이평값+5틱 보다
가격이 아래였다가(고가가 해당값보다 작다가) 지정한 값 이상의 시세가 발생함변
즉시 신호가 발생하게 작성해 드립니다.
매도진입은 반대입니다.
2
반대신호에 무조건 청산하고 진입은 조정단가가 오면 진입한다
반대신호가 어떤 신호를 의미하시는지 모르겠습니다.
매수진입은 골드시 이평값+5틱, 매도진입은 데드시 이평값-5틱입니다.
진입후 지정한 손절이나 익절조건이 충족하면 청산하고
손절이나 익절전에 반대진입이 만족하면 청산하고 반대진입에 들어가게 됩니다.
반대신호는 이평 크로스로 보고 청산을 추가해 드립니다.
불필요한 내용이면 삭제하시면 위 적어드린 내용으로 동작합니다.
3
Input : 당일수익틱수(80);
input : EndTime(230000);
Var : N1(0),dayPl(0),당일수익(0);
var : Tcond(false),Xcond(false),ST(0);
var : T(0);
IF Endtime > ST 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 bdate!= bdate[1] Then
{
ST = sTime;
IF endtime <= ST Then
{
SetStopEndofday(0);
}
Tcond = true;
Xcond = False;
}
당일수익 = PriceScale*당일수익틱수;
if Bdate != Bdate[1] Then
{
Xcond = false;
N1 = NetProfit;
}
daypl = NetProfit-N1;
if TotalTrades > TotalTrades[1] then
{
if 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;
}
var1 = ma(C,30);
Var2 = ma(C,200);
if CrossUp(var1,Var2) Then
{
value1 = 1;
value2 = var1+PriceScale*5;
if MarketPosition == -1 Then #매도진입후 골드 발생하면 청산
ExitShort();
}
if CrossDown(var1,Var2) Then
{
value1 = -1;
value3 = var1-PriceScale*5;
if MarketPosition == 1 Then #매수진입후 데드 발생하면 청산
ExitLong();
}
if Xcond == false and Tcond == true then
{
if MarketPosition <= 0 and value1 == 1 and H < value2 Then
Buy("b1",AtStop,value2,1);
if MarketPosition >= 0 and value1 == -1 and L > Value3 Then
Sell("s1",AtStop,value3,1);
if MarketPosition == 1 Then
{
if MaxEntries == 1 Then
Buy("b2",AtLimit,EntryPrice-PriceScale*40,2);
ExitLong("bp",AtLimit,avgEntryPrice+PriceScale*40);
ExitLong("bl",AtStop,avgEntryPrice-PriceScale*60);
}
if MarketPosition == -1 Then
{
if MaxEntries == 1 Then
Sell("s2",AtLimit,EntryPrice+PriceScale*40,2);
ExitShort("sp",AtLimit,avgEntryPrice-PriceScale*40);
ExitShort("sl",AtStop,avgEntryPrice+PriceScale*60);
}
if MarketPosition == 1 then
{
ExitLong("dbp",atlimit,EntryPrice+((당일수익-daypl)/CurrentContracts));
}
if MarketPosition == -1 then
{
ExitShort("dsp",atlimit,EntryPrice-((당일수익-daypl)/CurrentContracts));
}
}
즐거운 하루되세요
> 왈라스 님이 쓴 글입니다.
> 제목 : 다시 문의 합니다. 83896번
> 1.익절 청산후에 조건이 맞는다고 판단하여 30이평에서 재 진입합니다.
진입할때 조정틱을 감안하여 진입을 해야 하는데 이때 재진입단가는 신호가 나왓을때 진입단가여야 하는데 그렇지 않기때문에 무조건 진입합니다.
=> 진입가는 신호가 끝날때까지 고정
=>신호에 1회만 진입.
2.반대신호가 나왓을때 무조건 청산은 하고 자신의 진입가에서 기다렷다가 진입해야 하는데,진입단가가 안오면 다음 진입할때 기다렷다가 손실청산 혹은 청산을 합니다.
조정단가가 오지 않으면 손절청산까지 간다.
=> 이것을 반대신호에 무조건 청산하고 진입은 조정단가가 오면 진입한다
부탁합니다.