커뮤니티
Re : 수식 부탁합니다.
2019-05-01 13:01:01
228
글번호 128300
아래의 두 사이트에서 표기한 수식입니다.
참고하셔서 작성해 주시면 감사하겠습니다.
지표 이름은 Price Momentum Oscillator (PMO) 입니다.
그리고 먼저 작성해준 수식으로 지표를 만들면
그래프가 뒤집어져 있어, 마이너스를 적용해야 하더군요..
부탁드립니다.
a사이트
//PRC_Price Momentum Oscillator
//28.09.2016
//Nicolas @ www.prorealcode.com
//Sharing ProRealTime knowledge
// --- settings
//length1=35 // "First Smoothing"
//length2=20 //"Second Smoothing"
//siglength=10 //"Signal Smoothing"
// --- end of settings
if barindex>1 then
i = (close/close[1])*100
sm1 = 2.0/length1
csf1=((i-100)-csf1[1])*sm1+csf1[1]
pmol2=csf1
sm2 = 2.0/length2
csf2=((10*pmol2)-csf2[1])*sm2+csf2[1]
pmol=csf2
pmols=average[siglength,1](pmol)
-----------------------------------------------------
b사이트
Price Momentum Oscillator Formula and Calculations
Price Momentum Oscillator's calculations could be split into several steps for better understanding.
1. To smooth the ROC (price change), PMO uses non traditional EMAs. The first step would be to calculate Smoothing Constant Used to calculate non traditional EMA smoothing coefficients.
Smoothing1 = 2/p1
Smoothing2 = 2/p2
where
p1 is first smoothing period
p2 is second smoothing period
In traditional Exponential MA Smoothing is calculated as (2/(p+1))
2. Calculate 1-bar ROC - 1-bar price change in percent
ROC = (P(i) - P(i-1)) / P(i-1) * 100
where P ;is a price array
3. Apply non traditional EMA to calculated 1-bar price change
ROCma = ROCmaPrev + (ROC - ROCmaPrev ) * Smoothing1
where ROCmaPrev is the previsions bar's ROCma
4. To work with higher numbers multiply ROCma by 10 times
ROCma10 = ROCma * 10
5. Apply second non traditional EMA to calculate PMO:
PMO = PMOprev + (ROCma10 - PMOprev) * Smoothing2
5. Plot second signal line - signal line which is use traditional EMA applied to PMO
PMOsignal = Smoothing3 * (PMO - PMOsignalPrev) + PMOsignalPrev
where Smoothing3 = 2 / (p3 + 1)
where p3 is signal line bar period
> 예스스탁 님이 쓴 글입니다.
> 제목 : Re : 수식 부탁합니다.
> 안녕하세요
예스스탁입니다.
몇몇값에 대한 정의가 없어 수식 내용이 정확히 판단되지 않습니다.
아래 내용이 아니시면 설명과 같이 다시 올려주시기 바랍니다.
input : i(1),P1(5),P2(20),P3(10);
var : Smoothing1(0),Smoothing2(0),Smoothing3(0);
var : ROC(0),ROCma(0),ROCma10(0),PMO(0),PMOsignal(0);
Smoothing1 = 2/p1;
Smoothing2 = 2/p2;
Smoothing3 = 2/p3;
if CurrentBar >= 1 then
{
ROC = (c[i] - c[i-1]) / c[i-1] * 100;
ROCma = ROCma + (ROC - ROCma ) * Smoothing1;
ROCma10 = ROCma * 10;
PMO = PMO + (ROCma10 - PMO) * Smoothing2;
PMOsignal = Smoothing3 * (PMO - PMOsignal) + PMOsignal;
plot1(PMO);
plot2(PMOsignal);
}
즐거운 하루되세요
> dojuk 님이 쓴 글입니다.
> 제목 : 수식 부탁합니다.
> 수식부탁합니다.
Price Momentum Oscillator---PMO지표
Smoothing1 = 2/p1
Smoothing2 = 2/p2
ROC = (P(i) - P(i-1)) / P(i-1) * 100
ROCma = ROCmaPrev + (ROC - ROCmaPrev ) * Smoothing1
ROCma10 = ROCma * 10
PMO = PMOprev + (ROCma10 - PMOprev) * Smoothing2
PMOsignal = Smoothing3 * (PMO - PMOsignalPrev) + PMOsignalPrev
예스 수식으로 변경해봐도 잘 않되네요.. 서툴러서..
부탁드립니다.
답변 1
예스스탁 예스스탁 답변
2019-05-02 13:12:31
안녕하세요
예스스탁입니다.
다른 부분은 설명내요과 다른부분이 없습니다.
ROC의 기준이 반대로 되어 있어 수정했습니다.
input : i(1),P1(5),P2(20),P3(10);
var : Smoothing1(0),Smoothing2(0),Smoothing3(0);
var : ROC(0),ROCma(0),ROCma10(0),PMO(0),PMOsignal(0);
Smoothing1 = 2/p1;
Smoothing2 = 2/p2;
Smoothing3 = 2/p3;
if CurrentBar >= 1 then
{
ROC = (c-c[1]) / c[1] * 100;
ROCma = ROCma + (ROC - ROCma ) * Smoothing1;
ROCma10 = ROCma * 10;
PMO = PMO + (ROCma10 - PMO) * Smoothing2;
PMOsignal = Smoothing3 * (PMO - PMOsignal) + PMOsignal;
plot1(PMO);
plot2(PMOsignal);
}
즐거운 하루되세요
> dojuk 님이 쓴 글입니다.
> 제목 : Re : 수식 부탁합니다.
> 아래의 두 사이트에서 표기한 수식입니다.
참고하셔서 작성해 주시면 감사하겠습니다.
지표 이름은 Price Momentum Oscillator (PMO) 입니다.
그리고 먼저 작성해준 수식으로 지표를 만들면
그래프가 뒤집어져 있어, 마이너스를 적용해야 하더군요..
부탁드립니다.
a사이트
//PRC_Price Momentum Oscillator
//28.09.2016
//Nicolas @ www.prorealcode.com
//Sharing ProRealTime knowledge
// --- settings
//length1=35 // "First Smoothing"
//length2=20 //"Second Smoothing"
//siglength=10 //"Signal Smoothing"
// --- end of settings
if barindex>1 then
i = (close/close[1])*100
sm1 = 2.0/length1
csf1=((i-100)-csf1[1])*sm1+csf1[1]
pmol2=csf1
sm2 = 2.0/length2
csf2=((10*pmol2)-csf2[1])*sm2+csf2[1]
pmol=csf2
pmols=average[siglength,1](pmol)
-----------------------------------------------------
b사이트
Price Momentum Oscillator Formula and Calculations
Price Momentum Oscillator's calculations could be split into several steps for better understanding.
1. To smooth the ROC (price change), PMO uses non traditional EMAs. The first step would be to calculate Smoothing Constant Used to calculate non traditional EMA smoothing coefficients.
Smoothing1 = 2/p1
Smoothing2 = 2/p2
where
p1 is first smoothing period
p2 is second smoothing period
In traditional Exponential MA Smoothing is calculated as (2/(p+1))
2. Calculate 1-bar ROC - 1-bar price change in percent
ROC = (P(i) - P(i-1)) / P(i-1) * 100
where P ;is a price array
3. Apply non traditional EMA to calculated 1-bar price change
ROCma = ROCmaPrev + (ROC - ROCmaPrev ) * Smoothing1
where ROCmaPrev is the previsions bar's ROCma
4. To work with higher numbers multiply ROCma by 10 times
ROCma10 = ROCma * 10
5. Apply second non traditional EMA to calculate PMO:
PMO = PMOprev + (ROCma10 - PMOprev) * Smoothing2
5. Plot second signal line - signal line which is use traditional EMA applied to PMO
PMOsignal = Smoothing3 * (PMO - PMOsignalPrev) + PMOsignalPrev
where Smoothing3 = 2 / (p3 + 1)
where p3 is signal line bar period
> 예스스탁 님이 쓴 글입니다.
> 제목 : Re : 수식 부탁합니다.
> 안녕하세요
예스스탁입니다.
몇몇값에 대한 정의가 없어 수식 내용이 정확히 판단되지 않습니다.
아래 내용이 아니시면 설명과 같이 다시 올려주시기 바랍니다.
input : i(1),P1(5),P2(20),P3(10);
var : Smoothing1(0),Smoothing2(0),Smoothing3(0);
var : ROC(0),ROCma(0),ROCma10(0),PMO(0),PMOsignal(0);
Smoothing1 = 2/p1;
Smoothing2 = 2/p2;
Smoothing3 = 2/p3;
if CurrentBar >= 1 then
{
ROC = (c[i] - c[i-1]) / c[i-1] * 100;
ROCma = ROCma + (ROC - ROCma ) * Smoothing1;
ROCma10 = ROCma * 10;
PMO = PMO + (ROCma10 - PMO) * Smoothing2;
PMOsignal = Smoothing3 * (PMO - PMOsignal) + PMOsignal;
plot1(PMO);
plot2(PMOsignal);
}
즐거운 하루되세요
> dojuk 님이 쓴 글입니다.
> 제목 : 수식 부탁합니다.
> 수식부탁합니다.
Price Momentum Oscillator---PMO지표
Smoothing1 = 2/p1
Smoothing2 = 2/p2
ROC = (P(i) - P(i-1)) / P(i-1) * 100
ROCma = ROCmaPrev + (ROC - ROCmaPrev ) * Smoothing1
ROCma10 = ROCma * 10
PMO = PMOprev + (ROCma10 - PMOprev) * Smoothing2
PMOsignal = Smoothing3 * (PMO - PMOsignalPrev) + PMOsignalPrev
예스 수식으로 변경해봐도 잘 않되네요.. 서툴러서..
부탁드립니다.