예스스탁
예스스탁 답변
2024-04-16 15:37:00
안녕하세요
예스스탁입니다.
1
작성하신 청산식에 오류는 없습니다.
올리신 내용과 같이 작성이 되었습니다.
2
추가진입을 하므로 시스템 적용시에
시스템 트레이딩 설정창에서 피라미딩을 모든진입신호허용으로 설정하고 적용하셔야 합니다.
Input : shortPeriod(5), longPeriod(20);
Input : Y(3.4),N2(0.3),A(3.44),N3(0.77);
input : 추가진입(1),손절(5);
value1 = ma(C, shortPeriod);
value2 = ma(C, longPeriod);
# 매수/매도청산
If CrossUP(value1, value2) Then
{
Buy("b1");
}
# 매도/매수청산
If CrossDown(value1, value2) Then
{
Sell("s1");
}
#진입이후 Y이상 상승후 최고가에서 N2포인트 하락하면 청산
if MarketPosition == 1 Then
{
if highest(h,BarsSinceEntry) >= EntryPrice+Y Then
ExitLong("매수익절",AtStop,highest(H,BarsSinceEntry)-N2);
Buy("b2",AtLimit,LatestEntryPrice(0)-추가진입);
ExitLong("매수손절",AtStop,EntryPrice-손절);
}
#진입이후 A이상 하락후 최저가에서 N3포인트 상승하면 청산
if MarketPosition == -1 Then
{
if Lowest(L,BarsSinceEntry) <= EntryPrice-A Then
ExitShort("매도익절",AtStop,Lowest(L,BarsSinceEntry)+N3);
Sell("s2",AtLimit,LatestEntryPrice(0)+추가진입);
ExitShort("매도손절",AtStop,EntryPrice+손절);
}
즐거운 하루되세요
> cooparoo 님이 쓴 글입니다.
> 제목 : 수식 문의드립니다.
> 안녕하세요.
몇가지 수식 문의드립니다.
아래와 같은 식에서
Input : shortPeriod(5), longPeriod(20);
Input : Y(3.4),N2(0.3),A(3.44),N3(0.77);
value1 = ma(C, shortPeriod);
value2 = ma(C, longPeriod);
# 매수/매도청산
If CrossUP(value1, value2) Then
{
Buy("b1");
}
# 매도/매수청산
If CrossDown(value1, value2) Then
{
Sell("s1");
}
#진입이후 Y이상 상승후 최고가에서 N2포인트 하락하면 청산
if MarketPosition == 1 Then{
if highest(h,BarsSinceEntry) >= EntryPrice+Y Then
ExitLong("매수익절",AtStop,highest(H,BarsSinceEntry)-N2);
}
#진입이후 A이상 하락후 최저가에서 N3포인트 상승하면 청산
if MarketPosition == -1 Then{
if Lowest(L,BarsSinceEntry) <= EntryPrice-A Then
ExitShort("매도익절",AtStop,Lowest(L,BarsSinceEntry)+N3);
}
##########################################
위 수식에 오류가 없는지 검토 부탁 드립니다.
그리고 위 수식에 추가 하고 싶은 것들이 있습니다.
1. b1(매수) 진입가에서 몇 포인트 하락하면 추가로 1계약 진입하는식(외부변수)
2. s1(매도) 도 마찬가지로 얼마이상 오르면(포인트) 1계약 추가하는식.
3. 그리고 매수/매도 각각 setstoppoint 손절을 넣고 싶은데요
방법은 예를들어
"b1" 진입후에 추가 "b2" 가 진입해서 2계약일때 AvgEntryPrice 가 아니고
"b1" 의 지정손절가에 "b2" 도 같이 청산되는 방법좀 부탁드립니다.
2계약의 평균가가 기준이 아니라 첫 진입가를 기준으로 조건만족 되면 나머지 "b2"는
같이 손절하는식으로 부탁드립니다.