커뮤니티
수식 문의
2011-10-31 00:58:24
623
글번호 44256
1. 스토케스틱 매수매도
단기스토의 매수매도식에서 장기스토케스틱을 필터링으로 넣은 간단한 시스템.
매수 :
ㄱ.장기스토케스틱 (20-12-12)의 시그널 D선이 우상향인 동시에,
(단, 과열권 80 이상은 무조건 우상향으로 판단함)
ㄴ.단기스토케스틱 (5-3-3) K선이 D선을 골든크로스 할때 -> 매수
매수청산1 : 단기스토케스틱 K선이 D선을 데드크로스 할때
(단, 단기스토케스틱이 과열권에 들었을때는 K/D 데드크로스를 인정하지 않고
과열권을 이탈하였을때 매도)
매수청산2 : 매수신호 발생후 청산1신호가 뜨기 전에 장기스토케스틱이
우하향으로 돌아설때.
매도 :
ㄱ. 장기스토케스틱 (20-12-12)의 시그널D선이 우하향인 동시에,
(단, 침체권 20 이하에서는 무조건 우하향으로 판단함)
ㄴ. 단기스토케스틱 (5-3-3) K선이 D선을 데드크로스 할때 : 매도
매도청산1 : 단기스토케스틱 K선이 D선을 골드크로스 할때
(단, 단기스토케스틱이 침체권에 들었을때는 K/D 데드크로스를 인정하지 않고
침체권을 탈출하였을때 매도)
매도청산2 : 매도신호 발생후 청산1신호가 뜨기 전에 장기스토케스틱이
우하향으로 돌아설때.
★장기/단기스토케스틱의 값을 조절할 수 있도록 수식 부탁드립니다.
2. 스토케스틱 매수매도2
ㄱ. 위 시스템 수식을 갭보정한 시스템 수식을 얻고 싶습니다.
3.스토케스틱 + RCI 시스템
RCI상승하락신호에 스토케스틱을 필터링으로 넣으 간단한 시스템입니다.
매수 :
ㄱ. 스토케스틱 (20-12-12)의 시그널 D선이 우상향인 동시에,
(단, 과열권 80 이상의 흐름은 무조건 우상향으로 판단함)
ㄴ. RCI(5)가 상향반전하면 : 매수
매수청산1 : RCI(5)가 하향반전하면.
매수청산2 : 청산1신호가 뜨기 전에 스토케스틱D선이 우하향으로 돌아설때.
매도 :
ㄱ. 스토케스틱 (20-12-12)의 시그널 D선이 우하향인 동시에,
(단, 침체권 20 이하의 흐름은 무조건 우하향으로 판단함)
ㄴ. RCI(5)가 하향반전하면 : 매도
매도청산1 : RCI(5)가 상향반전하면.
매도청산2 : 청산1신호가 뜨기 전에 스토케스틱D선이 우상향으로 돌아설때.
★스토케스틱, RCI의 값을 조절할 수 있도록 수식 부탁드립니다.
4. 스토케스틱 + RCI 시스템 2
ㄱ. 위 3번 시스템 수식을 갭보정한 시스템 수식을 얻고 싶습니다.
가능하시면 메일로 부탁드립니다.
punkshow@korea.com
참고 ---------
RCI 지표 수식
input : P1(5)
Var : cnt(0),Nth(0),tempmax(0), tempindex(0), X1(0),RCI1(0),X2(0),RCI2(0),X3
(0),RCI3(0),X4(0),RCI4(0);
Array : VALUE1[50](0),VALUE2[50](0),VALUE3[50](0),VALUE4[50](0),NTHVALUE[50]
(0);
for cnt = 0 to 49{
VALUE1[cnt] = C[cnt];
VALUE2[cnt] = C[cnt];
VALUE3[cnt] = C[cnt];
VALUE4[cnt] = C[cnt];
}
###############################################
For Nth = 0 to P1-1 {
tempmax = -99999999;
For cnt = 0 to P1-1{
if VALUE1[cnt] > tempmax then{
tempmax = VALUE1[cnt];
tempIndex = cnt;
NTHVALUE[cnt] = Nth+1;
}
}
VALUE1[tempIndex] = -99999999;
}
X1 = 0;
for cnt = 0 to P1-1{
X1 = X1+ABS((cnt+1)-NTHVALUE[cnt])^2;
}
RCI1 = (1-(6*X1)/(P1*(P1^2-1)))*100;
plot1(data2(RCI1));
답변 1
예스스탁 예스스탁 답변
2011-10-31 15:55:41
안녕하세요
예스스탁입니다.
1.
input :LP1(20),Lp2(12),LP3(12),SP1(5),Sp2(3),SP3(3);
var1 = StochasticsK(LP1,LP2);
var2 = StochasticsD(LP1,LP2,LP3);
var3 = StochasticsK(SP1,SP2);
var4 = StochasticsD(SP1,SP2,SP3);
if var2 > var2[1] or var2 > 80 Then{
if crossup(var3,var4) Then
buy();
}
if MarketPosition == 1 Then{
if CrossDown(var3,var4) and var3 < 80 Then
ExitLong();
if var2 < var2[1] Then
exitlong();
}
if var2 < var2[1] or var2 < 20 Then{
if CrossDown(var3,var4) Then
Sell();
}
if MarketPosition == -1 Then{
if CrossUp(var3,var4) and var3 > 20 Then
ExitShort();
if var2 > var2[1] Then
ExitShort();
}
2.
input :LP1(20),Lp2(12),LP3(12),SP1(5),Sp2(3),SP3(3);
var : sumGap(0), gap(0), GO(0), GH(0), GL(0), GC(0);
var : stoLval1(0), stoHval1(0), fstK1(0),stoLval2(0), stoHval2(0), fstK2(0);
if date!=date[1] then { // 날짜가 변경되는 봉에서(분봉에서 첫번째 봉)
gap = Open-Close[1]; // 일간갭
sumGap = sumGap+gap; // 일간갭 누적
}
GO = O - sumGap;// 갭보정 시가
GH = H - sumGap;// 갭보정 고가
GL = L - sumGap;// 갭보정 저가
GC = C - sumGap; // 갭보정 종가
stoLval1 = lowest(GL,LP1);
stoHval1 = highest(GH,LP1);
fstK1 = (GC-stoLval1)/(stoHval1-stoLval1)*100;
var1 = ema(fstK1, LP2);
var2 = ema(var1, LP3);
stoLval2 = lowest(GL,LP1);
stoHval2 = highest(GH,LP1);
fstK2 = (GC-stoLval2)/(stoHval2-stoLval2)*100;
var3 = ema(fstK2, LP2);
var4 = ema(var3, LP3);
if var2 > var2[1] or var2 > 80 Then{
if crossup(var3,var4) Then
buy();
}
if MarketPosition == 1 Then{
if CrossDown(var3,var4) and var3 < 80 Then
ExitLong();
if var2 < var2[1] Then
exitlong();
}
if var2 < var2[1] or var2 < 20 Then{
if CrossDown(var3,var4) Then
Sell();
}
if MarketPosition == -1 Then{
if CrossUp(var3,var4) and var3 > 20 Then
ExitShort();
if var2 > var2[1] Then
ExitShort();
}
3.
input :LP1(20),Lp2(12),LP3(12);
input : P1(5);
Var : cnt(0),Nth(0),tempmax(0), tempindex(0), X1(0),RCI1(0),X2(0),RCI2(0),X3(0),RCI3(0),X4(0),RCI4(0);
Array : VALUE1[50](0),VALUE2[50](0),VALUE3[50](0),VALUE4[50](0),NTHVALUE[50](0);
for cnt = 0 to 49{
VALUE1[cnt] = C[cnt];
VALUE2[cnt] = C[cnt];
VALUE3[cnt] = C[cnt];
VALUE4[cnt] = C[cnt];
}
###############################################
For Nth = 0 to P1-1 {
tempmax = -99999999;
For cnt = 0 to P1-1{
if VALUE1[cnt] > tempmax then{
tempmax = VALUE1[cnt];
tempIndex = cnt;
NTHVALUE[cnt] = Nth+1;
}
}
VALUE1[tempIndex] = -99999999;
}
X1 = 0;
for cnt = 0 to P1-1{
X1 = X1+ABS((cnt+1)-NTHVALUE[cnt])^2;
}
RCI1 = (1-(6*X1)/(P1*(P1^2-1)))*100;
var1 = StochasticsK(LP1,LP2);
var2 = StochasticsD(LP1,LP2,LP3);
if var2 > var2[1] or var2 > 80 Then{
if RCI1 > RCI1[1] and RCI1[1] < RCI1[2] Then
buy();
}
if MarketPosition == 1 Then{
if RCI1 < RCI1[1] and RCI1[1] > RCI1[2] Then
ExitLong();
if var2 < var2[1] Then
exitlong();
}
if var2 < var2[1] or var2 < 20 Then{
if RCI1 < RCI1[1] and RCI1[1] > RCI1[2] Then
Sell();
}
if MarketPosition == -1 Then{
if RCI1 > RCI1[1] and RCI1[1] < RCI1[2] Then
ExitShort();
if var2 > var2[1] Then
ExitShort();
}
4.
input :LP1(20),Lp2(12),LP3(12);
input : P1(5);
Var : cnt(0),Nth(0),tempmax(0), tempindex(0), X1(0),RCI1(0),X2(0),RCI2(0),X3(0),RCI3(0),X4(0),RCI4(0);
Array : VALUE1[50](0),VALUE2[50](0),VALUE3[50](0),VALUE4[50](0),NTHVALUE[50](0);
var : sumGap(0), gap(0), GO(0), GH(0), GL(0), GC(0);
var : stoLval(0), stoHval(0), fstK(0), stoK(0), stoD(0);
if date!=date[1] then { // 날짜가 변경되는 봉에서(분봉에서 첫번째 봉)
gap = Open-Close[1]; // 일간갭
sumGap = sumGap+gap; // 일간갭 누적
}
GO = O - sumGap;// 갭보정 시가
GH = H - sumGap;// 갭보정 고가
GL = L - sumGap;// 갭보정 저가
GC = C - sumGap; // 갭보정 종가
for cnt = 0 to 49{
VALUE1[cnt] = GC[cnt];
VALUE2[cnt] = GC[cnt];
VALUE3[cnt] = GC[cnt];
VALUE4[cnt] = GC[cnt];
}
###############################################
For Nth = 0 to P1-1 {
tempmax = -99999999;
For cnt = 0 to P1-1{
if VALUE1[cnt] > tempmax then{
tempmax = VALUE1[cnt];
tempIndex = cnt;
NTHVALUE[cnt] = Nth+1;
}
}
VALUE1[tempIndex] = -99999999;
}
X1 = 0;
for cnt = 0 to P1-1{
X1 = X1+ABS((cnt+1)-NTHVALUE[cnt])^2;
}
RCI1 = (1-(6*X1)/(P1*(P1^2-1)))*100;
stoLval = lowest(GL,LP1);
stoHval = highest(GH,LP1);
fstK = (GC-stoLval)/(stoHval-stoLval)*100;
var1 = ema(fstK, LP2);
var2 = ema(var1, LP3);
if var2 > var2[1] or var2 > 80 Then{
if RCI1 > RCI1[1] and RCI1[1] < RCI1[2] Then
buy();
}
if MarketPosition == 1 Then{
if RCI1 < RCI1[1] and RCI1[1] > RCI1[2] Then
ExitLong();
if var2 < var2[1] Then
exitlong();
}
if var2 < var2[1] or var2 < 20 Then{
if RCI1 < RCI1[1] and RCI1[1] > RCI1[2] Then
Sell();
}
if MarketPosition == -1 Then{
if RCI1 > RCI1[1] and RCI1[1] < RCI1[2] Then
ExitShort();
if var2 > var2[1] Then
ExitShort();
}
즐거운 하루되세요
> 흑수돌 님이 쓴 글입니다.
> 제목 : 수식 문의
> 1. 스토케스틱 매수매도
단기스토의 매수매도식에서 장기스토케스틱을 필터링으로 넣은 간단한 시스템.
매수 :
ㄱ.장기스토케스틱 (20-12-12)의 시그널 D선이 우상향인 동시에,
(단, 과열권 80 이상은 무조건 우상향으로 판단함)
ㄴ.단기스토케스틱 (5-3-3) K선이 D선을 골든크로스 할때 -> 매수
매수청산1 : 단기스토케스틱 K선이 D선을 데드크로스 할때
(단, 단기스토케스틱이 과열권에 들었을때는 K/D 데드크로스를 인정하지 않고
과열권을 이탈하였을때 매도)
매수청산2 : 매수신호 발생후 청산1신호가 뜨기 전에 장기스토케스틱이
우하향으로 돌아설때.
매도 :
ㄱ. 장기스토케스틱 (20-12-12)의 시그널D선이 우하향인 동시에,
(단, 침체권 20 이하에서는 무조건 우하향으로 판단함)
ㄴ. 단기스토케스틱 (5-3-3) K선이 D선을 데드크로스 할때 : 매도
매도청산1 : 단기스토케스틱 K선이 D선을 골드크로스 할때
(단, 단기스토케스틱이 침체권에 들었을때는 K/D 데드크로스를 인정하지 않고
침체권을 탈출하였을때 매도)
매도청산2 : 매도신호 발생후 청산1신호가 뜨기 전에 장기스토케스틱이
우하향으로 돌아설때.
★장기/단기스토케스틱의 값을 조절할 수 있도록 수식 부탁드립니다.
2. 스토케스틱 매수매도2
ㄱ. 위 시스템 수식을 갭보정한 시스템 수식을 얻고 싶습니다.
3.스토케스틱 + RCI 시스템
RCI상승하락신호에 스토케스틱을 필터링으로 넣으 간단한 시스템입니다.
매수 :
ㄱ. 스토케스틱 (20-12-12)의 시그널 D선이 우상향인 동시에,
(단, 과열권 80 이상의 흐름은 무조건 우상향으로 판단함)
ㄴ. RCI(5)가 상향반전하면 : 매수
매수청산1 : RCI(5)가 하향반전하면.
매수청산2 : 청산1신호가 뜨기 전에 스토케스틱D선이 우하향으로 돌아설때.
매도 :
ㄱ. 스토케스틱 (20-12-12)의 시그널 D선이 우하향인 동시에,
(단, 침체권 20 이하의 흐름은 무조건 우하향으로 판단함)
ㄴ. RCI(5)가 하향반전하면 : 매도
매도청산1 : RCI(5)가 상향반전하면.
매도청산2 : 청산1신호가 뜨기 전에 스토케스틱D선이 우상향으로 돌아설때.
★스토케스틱, RCI의 값을 조절할 수 있도록 수식 부탁드립니다.
4. 스토케스틱 + RCI 시스템 2
ㄱ. 위 3번 시스템 수식을 갭보정한 시스템 수식을 얻고 싶습니다.
가능하시면 메일로 부탁드립니다.
punkshow@korea.com
참고 ---------
RCI 지표 수식
input : P1(5)
Var : cnt(0),Nth(0),tempmax(0), tempindex(0), X1(0),RCI1(0),X2(0),RCI2(0),X3
(0),RCI3(0),X4(0),RCI4(0);
Array : VALUE1[50](0),VALUE2[50](0),VALUE3[50](0),VALUE4[50](0),NTHVALUE[50]
(0);
for cnt = 0 to 49{
VALUE1[cnt] = C[cnt];
VALUE2[cnt] = C[cnt];
VALUE3[cnt] = C[cnt];
VALUE4[cnt] = C[cnt];
}
###############################################
For Nth = 0 to P1-1 {
tempmax = -99999999;
For cnt = 0 to P1-1{
if VALUE1[cnt] > tempmax then{
tempmax = VALUE1[cnt];
tempIndex = cnt;
NTHVALUE[cnt] = Nth+1;
}
}
VALUE1[tempIndex] = -99999999;
}
X1 = 0;
for cnt = 0 to P1-1{
X1 = X1+ABS((cnt+1)-NTHVALUE[cnt])^2;
}
RCI1 = (1-(6*X1)/(P1*(P1^2-1)))*100;
plot1(data2(RCI1));