커뮤니티
매수를 매도로
2013-03-07 15:25:34
199
글번호 60382
나름 매수수식을 매도수식으로 해봤는데 잘 안됩니다 ㅠㅠ
한번만 봐주세요
input : rsiPeriod(8), RSVValue(31),N(5),X(3);
input : maPeriod1(9),maPeriod2(13),maPeriod3(18), maPeriod4(66);
input : Vol(1420);
input : 간격(0.75);
input : LossPoint(1);
input : ProfitPoint(2.8);
input : MACDP1(12),MACDP2(26),MACDP3(9);
var : MAv1(0), MAv2(0), MAv3(0), MAv4(0);
var : RSV(0);
var : Energe1(0),Energe2(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 Condition1 == false
&& MarketPosition == 0
&& V > Vol
&& MAv1 < MAv2
&& MAv2 < MAv3
&& MAv3 < MAv4
&& RSV < RSVValue
&& MAv4 - MAv2 <= 간격
&& C < MAv4
&& MACDO < 0
Then
{
Sell("최초매도", OnClose, DEF);
Condition1 = true;
cnt = 0;
}
# 반복매도조건
if Condition1 == true and cnt == 0 and MarketPosition == 0 and
IsExitName("반복청산",1) == true and
C <= mav4-PriceScale*X and
(CrossDown(MACDO,0) or C >= ExitPrice(1)+PriceScale*N) Then{
sell("반복매도");
cnt = 1;
}
#반복매도청산조건
if MarketPosition == -1 and Crossup(MACDO,0) and cnt == 0 Then
ExitShort("반복청산");
//종가가 MAv4보다 크면 매도청산
if Condition1 == true and C > MAv4 Then {
ExitShort("MAv4청산");
Condition1 = false;
}
//손절/목표청산
if MarketPosition == -1 Then{
ExitShort("손절",AtStop,EntryPrice+Losspoint);
ExitShort("목표",AtLimit,EntryPrice-Profitpoint);
}
if BarsSinceExit(1) == 1 and (
IsExitName("손절",1) == true or IsExitName("목표",1) == True) Then
Condition1 = false;
답변 1
예스스탁 예스스탁 답변
2013-03-07 16:35:28
안녕하세요
예스스탁입니다.
거래량과 간격을 제외하고
조건을 반대로 만들어 보았습니다.
input : rsiPeriod(4), RSVValue(56),N(5),X(3);
input : maPeriod1(21),maPeriod2(25),maPeriod3(31), maPeriod4(57);
input : Vol(970);
input : 간격(0.15);
input : LossPoint(1.05);
input : ProfitPoint(2.35);
input : MACDP1(12),MACDP2(26),MACDP3(9);
var : MAv1(0), MAv2(0), MAv3(0), MAv4(0);
var : RSV(0);
var : Energe1(0),Energe2(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 Condition1 == false
&& MarketPosition == 0
&& V > Vol
&& MAv1 < MAv2
&& MAv2 < MAv3
&& MAv3 < MAv4
&& RSV < RSVValue
&& MAv2 - MAv4 <= 간격
&& C < MAv4
&& MACDO < 0
Then
{
Sell("최초매도", OnClose, DEF);
Condition1 = true;
cnt = 0;
}
# 반복매도조건
if Condition1 == true and cnt == 0 and MarketPosition == 0 and
IsExitName("반복청산",1) == true and
C >= mav4+PriceScale*X and
(CrossDown(MACDO,0) or C >= ExitPrice(1)+PriceScale*N) Then{
Sell("반복매도");
cnt = 1;
}
#반복매수청산조건
if MarketPosition == -1 and CrossUp(MACDO,0) and cnt == 0 Then
ExitShort("반복청산");
//종가가 MAv4보다 크면 매도청산
if Condition1 == true and C > MAv4 Then {
ExitShort("MAv4청산");
Condition1 = false;
}
//손절/목표청산
if MarketPosition == 1 Then{
ExitLong("손절",AtStop,EntryPrice+Losspoint);
ExitLong("목표",AtLimit,EntryPrice-Profitpoint);
}
if BarsSinceExit(1) == 1 and
(IsExitName("손절",1) == true or IsExitName("목표",1) == True) Then
Condition1 = false;
즐거운 하루되세요
> 아라미스33 님이 쓴 글입니다.
> 제목 : 매수를 매도로
> 나름 매수수식을 매도수식으로 해봤는데 잘 안됩니다 ㅠㅠ
한번만 봐주세요
input : rsiPeriod(8), RSVValue(31),N(5),X(3);
input : maPeriod1(9),maPeriod2(13),maPeriod3(18), maPeriod4(66);
input : Vol(1420);
input : 간격(0.75);
input : LossPoint(1);
input : ProfitPoint(2.8);
input : MACDP1(12),MACDP2(26),MACDP3(9);
var : MAv1(0), MAv2(0), MAv3(0), MAv4(0);
var : RSV(0);
var : Energe1(0),Energe2(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 Condition1 == false
&& MarketPosition == 0
&& V > Vol
&& MAv1 < MAv2
&& MAv2 < MAv3
&& MAv3 < MAv4
&& RSV < RSVValue
&& MAv4 - MAv2 <= 간격
&& C < MAv4
&& MACDO < 0
Then
{
Sell("최초매도", OnClose, DEF);
Condition1 = true;
cnt = 0;
}
# 반복매도조건
if Condition1 == true and cnt == 0 and MarketPosition == 0 and
IsExitName("반복청산",1) == true and
C <= mav4-PriceScale*X and
(CrossDown(MACDO,0) or C >= ExitPrice(1)+PriceScale*N) Then{
sell("반복매도");
cnt = 1;
}
#반복매도청산조건
if MarketPosition == -1 and Crossup(MACDO,0) and cnt == 0 Then
ExitShort("반복청산");
//종가가 MAv4보다 크면 매도청산
if Condition1 == true and C > MAv4 Then {
ExitShort("MAv4청산");
Condition1 = false;
}
//손절/목표청산
if MarketPosition == -1 Then{
ExitShort("손절",AtStop,EntryPrice+Losspoint);
ExitShort("목표",AtLimit,EntryPrice-Profitpoint);
}
if BarsSinceExit(1) == 1 and (
IsExitName("손절",1) == true or IsExitName("목표",1) == True) Then
Condition1 = false;