커뮤니티
확인부탁합니다
2013-10-17 18:01:01
170
글번호 68581
안녕하세요
제가원하는 식이 아니여서 다시 문의합니다
첨부파일에(빨간줄로 만들어그어놨습니다 빨간색줄은 매수안되게해주세여,파란색줄로 매수하는게 제가 원하는 매수신호입니다) 파란막대에서도 매수신호가 나오는데요 파란막대에서는 매수가안나오게해주세여
아래의식에서 매수조건을 하나 더 넣어주세요
macd오실레이터에서 파란색에서 빨간색으로 바뀌는 시점에서 빨간 막대 4개 안에들어갈경우에 매수가능하게 해주세요 막대4개 넘어가면 매수금지되는식으로요
시작은 파란색막대에서 빨간색 막대로 바뀔경우(1,2,3,4,)4개막대 안에서만 매수하게금요
그럼 빨간막대에서 1번만 매수되겠죠~~
오실레이터 만족,아래조건 만족시 매수하게 해주세요
확인부탁합니다
수고하십시오
input : 투입금액(500000),P(20),P1(12),P2(26),P3(9);
var : ma2(0),MACDO(0),K(0);
ma2 = ma(c,20);
MACDO = MACD_OSC(P1,P2,P3);
if crossup(MACDO,0) or CrossDown(MACDO,0) Then
k = 0;
if MACDO > 0 Then
K = K+1;
if CodeCategory == 1 Then{ #코스피
if BasePrice < 50000 Then
Var1 = int(int(투입금액/C)/10)*10;
Else
Var1 = int(투입금액/C);
}
if CodeCategory == 2 Then#코스닥
Var1 = int(투입금액/C);
if CodeCategory == 6 Then#옵션
Var1 = int(투입금액/(C*BigPointValue));
If V >100000 and Upvol/DownVol*100 >=120 and K <= 4
Then{
if MarketPosition == 0 or (MarketPosition == 1 and C <= EntryPrice*0.95) Then
buy("매수",onclose,def,var1);
}
if CodeCategory == 1 Then{
if BasePrice < 50000 Then
value1 = int(int(투입금액/C)/10)*10;
Else
value1 = int(투입금액/C);
}
if CodeCategory == 2 or CodeCategory == 8 Then
value1 = int(투입금액/C);
if MarketPosition == 1 Then{
ExitLong("손절",AtStop,L[BarsSinceEntry]-PriceScale);
if countif(C < O,2) == 2 Then
;
}
value1 = ema(C, 1);
value2 = ema(C, 5);
# 매도/매수청산
If CrossDown(value1, value2) and C > EntryPrice Then
{
Sell();
}
- 1. 69029_오실레이터.JPG (0.17 MB)
답변 1
예스스탁 예스스탁 답변
2013-10-17 19:03:00
안녕하세요
예스스탁입니다.
내용을 잘못이해 했습니다.
기존식은 오실레이터가 붉은색(0이상)으로 변경되고 4개봉이후에는
진입하지 않게 작성된 식입니다. 파란색에서의 제한이 없었습니다.
아래는 수정한 식입니다.
붉은색에서만 진입하고 4개봉까지만 진입하고
붉은색 구간에서 한번만 매수가 되게 수정했습니다.
input : 투입금액(500000),P(20),P1(12),P2(26),P3(9);
var : ma2(0),MACDO(0),K(0),entrycond(false);
ma2 = ma(c,20);
MACDO = MACD_OSC(P1,P2,P3);
if crossup(MACDO,0) or CrossDown(MACDO,0) Then
k = 0;
if MACDO > 0 Then
K = K+1;
if crossup(MACDO,0) Then
entrycond = false;
if CodeCategory == 1 Then{ #코스피
if BasePrice < 50000 Then
Var1 = int(int(투입금액/C)/10)*10;
Else
Var1 = int(투입금액/C);
}
if CodeCategory == 2 Then#코스닥
Var1 = int(투입금액/C);
if CodeCategory == 6 Then#옵션
Var1 = int(투입금액/(C*BigPointValue));
If V >100000 and Upvol/DownVol*100 >=120 and K <= 4 and K >= 1 and entrycond == false Then{
if MarketPosition == 0 or (MarketPosition == 1 and C <= EntryPrice*0.95) Then{
entrycond = true;
buy("매수",onclose,def,var1);
}
}
if CodeCategory == 1 Then{
if BasePrice < 50000 Then
value1 = int(int(투입금액/C)/10)*10;
Else
value1 = int(투입금액/C);
}
if CodeCategory == 2 or CodeCategory == 8 Then
value1 = int(투입금액/C);
if MarketPosition == 1 Then{
ExitLong("손절",AtStop,L[BarsSinceEntry]-PriceScale);
if countif(C < O,2) == 2 Then
;
}
value1 = ema(C, 1);
value2 = ema(C, 5);
# 매도/매수청산
If CrossDown(value1, value2) and C > EntryPrice Then
{
Sell();
}
즐거운 하루되세요
> HI_jh***** 님이 쓴 글입니다.
> 제목 : 확인부탁합니다
> 안녕하세요
제가원하는 식이 아니여서 다시 문의합니다
첨부파일에(빨간줄로 만들어그어놨습니다 빨간색줄은 매수안되게해주세여,파란색줄로 매수하는게 제가 원하는 매수신호입니다) 파란막대에서도 매수신호가 나오는데요 파란막대에서는 매수가안나오게해주세여
아래의식에서 매수조건을 하나 더 넣어주세요
macd오실레이터에서 파란색에서 빨간색으로 바뀌는 시점에서 빨간 막대 4개 안에들어갈경우에 매수가능하게 해주세요 막대4개 넘어가면 매수금지되는식으로요
시작은 파란색막대에서 빨간색 막대로 바뀔경우(1,2,3,4,)4개막대 안에서만 매수하게금요
그럼 빨간막대에서 1번만 매수되겠죠~~
오실레이터 만족,아래조건 만족시 매수하게 해주세요
확인부탁합니다
수고하십시오
input : 투입금액(500000),P(20),P1(12),P2(26),P3(9);
var : ma2(0),MACDO(0),K(0);
ma2 = ma(c,20);
MACDO = MACD_OSC(P1,P2,P3);
if crossup(MACDO,0) or CrossDown(MACDO,0) Then
k = 0;
if MACDO > 0 Then
K = K+1;
if CodeCategory == 1 Then{ #코스피
if BasePrice < 50000 Then
Var1 = int(int(투입금액/C)/10)*10;
Else
Var1 = int(투입금액/C);
}
if CodeCategory == 2 Then#코스닥
Var1 = int(투입금액/C);
if CodeCategory == 6 Then#옵션
Var1 = int(투입금액/(C*BigPointValue));
If V >100000 and Upvol/DownVol*100 >=120 and K <= 4
Then{
if MarketPosition == 0 or (MarketPosition == 1 and C <= EntryPrice*0.95) Then
buy("매수",onclose,def,var1);
}
if CodeCategory == 1 Then{
if BasePrice < 50000 Then
value1 = int(int(투입금액/C)/10)*10;
Else
value1 = int(투입금액/C);
}
if CodeCategory == 2 or CodeCategory == 8 Then
value1 = int(투입금액/C);
if MarketPosition == 1 Then{
ExitLong("손절",AtStop,L[BarsSinceEntry]-PriceScale);
if countif(C < O,2) == 2 Then
;
}
value1 = ema(C, 1);
value2 = ema(C, 5);
# 매도/매수청산
If CrossDown(value1, value2) and C > EntryPrice Then
{
Sell();
}
다음글
이전글