커뮤니티
50522재문의
2016-11-11 12:30:34
138
글번호 103899
1.
input : 시작시간(90000),종료시간(150000),하루수익틱수(50);
var : Tcond(false),Xcond(false);
var : NP(0),N1(0),DayPL(0),당일수익(0);
NP = NetProfit;
당일수익 = PriceScale*하루수익틱수;
if stime == 시작시간 or (stime > 시작시간 and stime[1] < 시작시간) Then{
Tcond = true;
N1 = NP[1];
Xcond = false;
}
if stime == 종료시간 or (stime > 종료시간 and stime[1] < 종료시간) Then{
Tcond = false;
if MarketPosition == 1 Then
exitlong("tbx");
if MarketPosition == -1 Then
ExitShort("tsx");
}
dayPL = NP-N1;
if TotalTrades > TotalTrades[1] and (IsExitName("dbx",1) == true or IsExitName("dsx",1) == true) Then
Xcond = true;
var1 = ma(C,3);
var2 = ma(C,100);
if Tcond == true and Xcond == false then{
if MarketPosition <= 0 and var1 > var2[1] and var2 > var2[1] Then
buy("b");
if MarketPosition >= 0 and var1 < var2[1] and var2 < var2[1] Then
sell("s");
if MarketPosition == 1 and var1 == var1[1] Then
exitlong("bx");
if MarketPosition == -1 and var1 == var1[1] Then
ExitShort("sx");
if MarketPosition == 1 Then
ExitLong("dbx",AtLimit,EntryPrice+당일수익-dayPL);
if MarketPosition == -1 Then
ExitShort("dsx",atlimit,EntryPrice-당일수익+daypl);
}
작성해주신내용
재문의하는내용은 사진 에 포함합니다..
- 1. 104432_제목_없음.png (0.03 MB)
답변 1
예스스탁 예스스탁 답변
2016-11-11 13:09:50
안녕하세요
예스스탁입니다.
진입내용수정하고 수식에 주석붙여 드립니다.
input : 시작시간(90000),종료시간(150000),하루수익틱수(50);
var : Tcond(false),Xcond(false);
var : NP(0),N1(0),DayPL(0),당일수익(0);
#총손익
NP = NetProfit;
#당일수익
당일수익 = PriceScale*하루수익틱수;
#시작시긴이 되면
if stime == 시작시간 or (stime > 시작시간 and stime[1] < 시작시간) Then{
#Tcobnd는 true
Tcond = true;
#시작시간 기준 이전총손익
N1 = NP[1];
#Xcond는 false로 초기화
Xcond = false;
}
#종료시간이 되면
if stime == 종료시간 or (stime > 종료시간 and stime[1] < 종료시간) Then{
#Tcond는 false로
Tcond = false;
#매수진입중이면 청산
if MarketPosition == 1 Then
ExitLong("tbx");
#매도진입중이면 청산
if MarketPosition == -1 Then
ExitShort("tsx");
}
#당일수익(현재까지의 총손익-시작시간 총손익)
dayPL = NP-N1;
#당일수익청산이 발생합면 Xcond는 true
if TotalTrades > TotalTrades[1] and (IsExitName("dbx",1) == true or IsExitName("dsx",1) == true) Then
Xcond = true;
#이평
var1 = ma(C,3);
var2 = ma(C,100);
#Tcond는 true이고 Xcond는 false일때만 진입청산
if Tcond == true and Xcond == false then{
#매수진입 - 3이평 100이평이 모두 상승중이면 매수진입
if MarketPosition <= 0 and var1 > var1[1] and var2 > var2[1] Then
buy("b");
#매도진입 - 3이평 100이평이 모두 하락중이면 매도진입
if MarketPosition >= 0 and var1 < var1[1] and var2 < var2[1] Then
sell("s");
#매수청산 - 매수진입후 3이평이 값이 같거나 하락하면 청산
if MarketPosition == 1 and var1 <= var1[1] Then
ExitLong("bx");
#매도청산 - 매도진입후 3이평이 값이 같거나 상승하면 청산
if MarketPosition == -1 and var1 >= var1[1] Then
ExitShort("sx");
#매수진입후 당일수익에 도달하면 청산
if MarketPosition == 1 Then
ExitLong("dbx",AtLimit,EntryPrice+당일수익-dayPL);
#매도진입후 당일수익에 도달하면 청산
if MarketPosition == -1 Then
ExitShort("dsx",atlimit,EntryPrice-당일수익+daypl);
}
즐거운 하루되세요
> 곽민수 님이 쓴 글입니다.
> 제목 : 50522재문의
> 1.
input : 시작시간(90000),종료시간(150000),하루수익틱수(50);
var : Tcond(false),Xcond(false);
var : NP(0),N1(0),DayPL(0),당일수익(0);
NP = NetProfit;
당일수익 = PriceScale*하루수익틱수;
if stime == 시작시간 or (stime > 시작시간 and stime[1] < 시작시간) Then{
Tcond = true;
N1 = NP[1];
Xcond = false;
}
if stime == 종료시간 or (stime > 종료시간 and stime[1] < 종료시간) Then{
Tcond = false;
if MarketPosition == 1 Then
exitlong("tbx");
if MarketPosition == -1 Then
ExitShort("tsx");
}
dayPL = NP-N1;
if TotalTrades > TotalTrades[1] and (IsExitName("dbx",1) == true or IsExitName("dsx",1) == true) Then
Xcond = true;
var1 = ma(C,3);
var2 = ma(C,100);
if Tcond == true and Xcond == false then{
if MarketPosition <= 0 and var1 > var2[1] and var2 > var2[1] Then
buy("b");
if MarketPosition >= 0 and var1 < var2[1] and var2 < var2[1] Then
sell("s");
if MarketPosition == 1 and var1 == var1[1] Then
exitlong("bx");
if MarketPosition == -1 and var1 == var1[1] Then
ExitShort("sx");
if MarketPosition == 1 Then
ExitLong("dbx",AtLimit,EntryPrice+당일수익-dayPL);
if MarketPosition == -1 Then
ExitShort("dsx",atlimit,EntryPrice-당일수익+daypl);
}
작성해주신내용
재문의하는내용은 사진 에 포함합니다..