커뮤니티
부탁드립니다.
2014-07-31 12:56:13
137
글번호 77296
당일거래된(현재 진입중인 것 포함) 당일총손익을 무어라 표현하나요? 복수진입일 경우
1. 당일총이익이 2.20포인트에서 익절
복수진입일 경우 현재진입중인 포지션의 총평가손익은 무어라 표현하나요?
2. 현재진입중인 포지션의 총평가손익이 2포인트일 때 청산
3. 이익과 손실은 용어를 달리해야 하나요. 아니면 손익이라는 용어로 하나로 쓰나요?
4, 가상매매와 실진입매매의 표현(이것이 가능한가요?)
(1) 가상매매조건
If 매수조건 Then Buy();
If 매수청산조건 Then Exitlong();
If 매도조건 Then Sell();
If 매도청산조건 Then Exitshort();
(2) 실제매매조건
위의 가상매매조건대로 매매했다고 가정할 때 (전일가상매매도 함께 이어서 카운트)
직전6번의 실현손익이 (4연속손실+1회이익+1회손실) 또는
직전5번의 실현손익이 (5연속손실)일 때에만
가상매매조건의 매수(매도)조건에 매수(매도).
가상매매조건의 매수(매도)청산조건에 청산.
1포인트 익절.
(3) 청산되고 나면 다시 가상매매조건의 손익순서와 횟수를 카운트하여 맞는 조건에 진입
5. 피라미딩에서 서로다른 신호만 허용할시에
한 봉에서 여러신호가 중복되어 나타날 경우는 동일봉에서는 1계약만 진입하게 하려면 어떻게 해야 하나요?
답변 1
예스스탁 예스스탁 답변
2014-07-31 15:57:22
안녕하세요
예스스타입니다.
1-1.
input : 하루수익(2.20);
var : NP(0),PreNP(0),dayPL(0);
NP = NetProfit;
if date != date[1] Then
PreNP = NP[1];
#당일 손익
dayPL = (NP-PreNP);
//진입식에 당일손익이 하루이익보다 작을때만 진입하게 조건 추가
if dayPL < 하루이익 and 매수진입조건 Then
buy();
if dayPL < 하루이익 and 매도진입조건 Then
sell();
if MarketPosition == 1 Then{
ExitLong("bx1",AtLimit,AvgEntryPrice+(하루수익-daypl)/CurrentContracts);
}
if MarketPosition == -1 Then{
ExitShort("sx1",AtLimit,AvgEntryPrice-(하루수익-daypl)/CurrentContracts );
}
NetProfit은 전체 거래(청산종결된거래만)의 손익입니다.
당일 첫봉에서 전일까지의 NetProfit을 저장하고
현재의 NetProfit에서 전일 NetProfit을 빼시면
당일 청산된 거래만 대상으로 당일손익이 발생합니다.
1-2
현재 진행중인 포지션의 손익(PositionProfit)을 더하시면 됩니다.
PositionProfit이 포지션의 손익을 리턴해 줍니다.
단일진입이거나 피라미딩을 해서 추가진입된 부분도 모두 반영이 됩니다.
2.
input : 포지션총이익(2.0)
if MarketPosition == 1 Then
ExitLong("bx",Atlimit,AvgEntryPrice+(포지션총이익/CurrentContracts));
if MarketPosition == -1 Then
ExitShort("sx",Atlimit,AvgEntryPrice-(포지션총이익/CurrentContracts));
3.
편하신 내용으로 지칭하시면 됩니다.
일반적으로 함수는 모두 손익으로 리턴합니다.
리턴받은 값이 0 이상이면 수익, 0이하이면 손실입니다.
4.
아래내용 참고하시기 바랍니다.
가상으로 거래의 손익을 판단하는 부분은
전략의 내용에 따라 많이 다르게 됩니다.
var : EntryP(0),pst(0),cnt(0),sum(0);
Array : PL[30](0);
if pst == 0 and 매수조건 Then{
Pst = 1 ;
EntryP = C;
sum = 0;
for cnt = 0 to 5{
if PL[cnt] < 0 Then
sum = sum+1;
}
if sum >= 5 Then
buy();
}
if pst == 1 and 매수청산조건 Then{
Pst = 0 ;
PL[0] = C-EntryP;
for cnt = 1 to 30{
PL[cnt] = PL[cnt-1][1];
}
}
if pst == 1 and H >= entryP+1 Then{
Pst = 0;
PL[0] = 1;
for cnt = 1 to 30{
PL[cnt] = PL[cnt-1][1];
}
if MarketPosition == 1 Then
ExitLong();
}
if pst == 0 and 매도조건 Then{
Pst = -1 ;
EntryP = C;
sum = 0;
for cnt = 0 to 5{
if PL[cnt] < 0 Then
sum = sum+1;
}
if sum >= 5 Then
buy();
}
if pst == 1 and 매도청산조건 Then{
Pst = 0 ;
PL[0] = EntryP-C;
for cnt = 1 to 30{
PL[cnt] = PL[cnt-1][1];
}
if MarketPosition == -1 Then
ExitShort();
}
if pst == -1 and L <= entryP-1 Then{
Pst = 0;
PL[0] = 1;
for cnt = 1 to 30{
PL[cnt] = PL[cnt-1][1];
}
}
SetStopProfittarget(1,PointStop);
5
문의하신 부분은 가능하지 않습니다.
시스템은 신호발생 지정한 수량으로 신호와 주문이 집행됩니다.
사후에 처리가 될수 없습니다.
즐거운 하루되세요
> 묘선낭자 님이 쓴 글입니다.
> 제목 : 부탁드립니다.
> 당일거래된(현재 진입중인 것 포함) 당일총손익을 무어라 표현하나요? 복수진입일 경우
1. 당일총이익이 2.20포인트에서 익절
복수진입일 경우 현재진입중인 포지션의 총평가손익은 무어라 표현하나요?
2. 현재진입중인 포지션의 총평가손익이 2포인트일 때 청산
3. 이익과 손실은 용어를 달리해야 하나요. 아니면 손익이라는 용어로 하나로 쓰나요?
4, 가상매매와 실진입매매의 표현(이것이 가능한가요?)
(1) 가상매매조건
If 매수조건 Then Buy();
If 매수청산조건 Then Exitlong();
If 매도조건 Then Sell();
If 매도청산조건 Then Exitshort();
(2) 실제매매조건
위의 가상매매조건대로 매매했다고 가정할 때 (전일가상매매도 함께 이어서 카운트)
직전6번의 실현손익이 (4연속손실+1회이익+1회손실) 또는
직전5번의 실현손익이 (5연속손실)일 때에만
가상매매조건의 매수(매도)조건에 매수(매도).
가상매매조건의 매수(매도)청산조건에 청산.
1포인트 익절.
(3) 청산되고 나면 다시 가상매매조건의 손익순서와 횟수를 카운트하여 맞는 조건에 진입
5. 피라미딩에서 서로다른 신호만 허용할시에
한 봉에서 여러신호가 중복되어 나타날 경우는 동일봉에서는 1계약만 진입하게 하려면 어떻게 해야 하나요?