커뮤니티
확인 좀 해주세요
2013-03-22 13:36:21
236
글번호 61083
제가 매도 수식으로 한번 바꾸어 봤는데 확인 좀 부탁 드립니다
감사합니다
input : rsiPeriod(2), RSVValue(66),N(0),X(5);
input : maPeriod1(15),maPeriod2(16),maPeriod3(23), maPeriod4(100);
input : Vol(1100);
input : LossPoint(0.55);
input : ProfitPoint(3.7);
input : MACDP1(4),MACDP2(39),MACDP3(18);
input : 반복매도횟수(3),반복청산횟수(3);
var : MAv1(0), MAv2(0), MAv3(0), MAv4(0);
var : RSV(0);
var : MACDO(0),cnt(0);
MAv1 = ma(C,maPeriod1);
MAv2 = ma(C,maPeriod2);
MAv3 = ma(C,maPeriod3);
MAv4 = ma(C,maPeriod4);
RSV = RSI(rsiPeriod);
MACDO = MACD_OSC(MACDP1,MACDP2,MACDP3);//MACD 오실레이터
if date != date[1] Then
Condition1 = false;
if MarketPosition == -1 and IsEntryName("최초매도") == true Then{
if MarketPosition != MarketPosition[1] Then{
var1 = EntryPrice;
Condition1 = true;
value1 = 0;
value2 = 0;
}
}
if MarketPosition == -1 and IsEntryName("반복매도") == true Then{
if MarketPosition != MarketPosition[1] Then{
value1 = value1+1;
}
}
if MarketPosition == 0 and IsExitName("반복청산",1) == true Then{
if MarketPosition != MarketPosition[1] Then{
value2 = value2+1;
}
}
#최초 매도조건
if Condition1 == false
&& MarketPosition == 0
&& V > Vol
&& MAv1 < MAv2
&& MAv2 < MAv3
&& MAv3 < MAv4
&& RSV < RSVValue
&& C < MAv1
&& MACDO < 0
Then
{
Sell("최초매도", OnClose, DEF);
}
# 반복매도조건
if Condition1 == true
&& MarketPosition == 0
&& IsExitName("반복청산",1) == true
&& (IsEntryName("최초매도",1) == true or IsEntryName("반복매도",1) == true)
&& EntryDate(1) == sdate
&& C <= mav4-PriceScale*X
&& (CrossDown(MACDO,0) or C >= ExitPrice(1)+PriceScale*N)
&& value1 < 반복매도횟수 Then{
sell("반복매도");
}
#반복매도청산조건
if Condition1 == true
&& MarketPosition == -1
&& CrossDown(MACDO,0)
&& (IsEntryName("최초매도") == true or IsEntryName("반복매도") == true)
&& value2 < 반복청산횟수 Then{
ExitShort("반복청산");
}
//종가가 MAv4보다 크면 매도청산
if Condition1 == true
&& C > MAv4 Then {
ExitShort("MAv4청산");
Condition1 = false;
value1 = 0;
value2 = 0;
}
//손절/목표청산
if MarketPosition == -1 Then{
ExitShort("손절",AtStop,var1+Losspoint);
ExitShort("목표",AtLimit,var1-Profitpoint);
}
if BarsSinceExit(1) == 1 and (
IsExitName("손절",1) == true or IsExitName("목표",1) == True) Then
Condition1 = false;
답변 2
예스스탁 예스스탁 답변
2013-03-22 16:39:20
안녕하세요
예스스탁입니다.
살펴봤는데 이상이 없습니다.
즐거운 하루되세요
> 아라미스33 님이 쓴 글입니다.
> 제목 : 확인 좀 해주세요
> 제가 매도 수식으로 한번 바꾸어 봤는데 확인 좀 부탁 드립니다
감사합니다
input : rsiPeriod(2), RSVValue(66),N(0),X(5);
input : maPeriod1(15),maPeriod2(16),maPeriod3(23), maPeriod4(100);
input : Vol(1100);
input : LossPoint(0.55);
input : ProfitPoint(3.7);
input : MACDP1(4),MACDP2(39),MACDP3(18);
input : 반복매도횟수(3),반복청산횟수(3);
var : MAv1(0), MAv2(0), MAv3(0), MAv4(0);
var : RSV(0);
var : MACDO(0),cnt(0);
MAv1 = ma(C,maPeriod1);
MAv2 = ma(C,maPeriod2);
MAv3 = ma(C,maPeriod3);
MAv4 = ma(C,maPeriod4);
RSV = RSI(rsiPeriod);
MACDO = MACD_OSC(MACDP1,MACDP2,MACDP3);//MACD 오실레이터
if date != date[1] Then
Condition1 = false;
if MarketPosition == -1 and IsEntryName("최초매도") == true Then{
if MarketPosition != MarketPosition[1] Then{
var1 = EntryPrice;
Condition1 = true;
value1 = 0;
value2 = 0;
}
}
if MarketPosition == -1 and IsEntryName("반복매도") == true Then{
if MarketPosition != MarketPosition[1] Then{
value1 = value1+1;
}
}
if MarketPosition == 0 and IsExitName("반복청산",1) == true Then{
if MarketPosition != MarketPosition[1] Then{
value2 = value2+1;
}
}
#최초 매도조건
if Condition1 == false
&& MarketPosition == 0
&& V > Vol
&& MAv1 < MAv2
&& MAv2 < MAv3
&& MAv3 < MAv4
&& RSV < RSVValue
&& C < MAv1
&& MACDO < 0
Then
{
Sell("최초매도", OnClose, DEF);
}
# 반복매도조건
if Condition1 == true
&& MarketPosition == 0
&& IsExitName("반복청산",1) == true
&& (IsEntryName("최초매도",1) == true or IsEntryName("반복매도",1) == true)
&& EntryDate(1) == sdate
&& C <= mav4-PriceScale*X
&& (CrossDown(MACDO,0) or C >= ExitPrice(1)+PriceScale*N)
&& value1 < 반복매도횟수 Then{
sell("반복매도");
}
#반복매도청산조건
if Condition1 == true
&& MarketPosition == -1
&& CrossDown(MACDO,0)
&& (IsEntryName("최초매도") == true or IsEntryName("반복매도") == true)
&& value2 < 반복청산횟수 Then{
ExitShort("반복청산");
}
//종가가 MAv4보다 크면 매도청산
if Condition1 == true
&& C > MAv4 Then {
ExitShort("MAv4청산");
Condition1 = false;
value1 = 0;
value2 = 0;
}
//손절/목표청산
if MarketPosition == -1 Then{
ExitShort("손절",AtStop,var1+Losspoint);
ExitShort("목표",AtLimit,var1-Profitpoint);
}
if BarsSinceExit(1) == 1 and (
IsExitName("손절",1) == true or IsExitName("목표",1) == True) Then
Condition1 = false;
아라미스33
2013-03-22 17:06:17
아라미스33 님에 의해 삭제된 답변입니다.
다음글
이전글