라이브러리
[PHP] trader_adx - 평균 방향 이동 지수
트레이더 ADX (Average Directional Index)
ADX는 1978년 J. Welles Wilder Jr.가 개발한 기술적 분석 도구입니다. ADX는 시장의 강도나 강약을 측정하는 데 사용됩니다. 강도는 시장의 가격이 상승하거나 하락하는 속도에 대한 지표입니다.
ADX 계산 방법
ADX는 14일 이동 평균을 사용하여 계산됩니다. 이동 평균은 기간 동안의 가격 변화를 평균하는 방법입니다.
1. 14일 이동 평균을 계산합니다.
2. 14일 이동 평균의 상승 및 하락을 계산합니다.
3. 상승 및 하락의 평균을 계산합니다.
4. ADX는 상승 및 하락의 평균을 100으로 나누어 계산됩니다.
PHP에서 ADX 구현
PHP에서 ADX를 구현하는 방법은 다음과 같습니다.
#hostingforum.kr
php
function adx($high, $low, $close, $period = 14) {
// 14일 이동 평균을 계산합니다.
$hma = array();
for ($i = 0; $i < count($high); $i++) {
if ($i >= $period) {
$hma[] = ($hma[$i - 1] * ($period - 1) + $close[$i]) / $period;
} else {
$hma[] = ($close[$i] + array_sum(array_slice($close, 0, $i)) / $i) / ($i + 1);
}
}
// 14일 이동 평균의 상승 및 하락을 계산합니다.
$tr = array();
for ($i = 0; $i < count($high); $i++) {
if ($i >= $period) {
$tr[] = max(abs($high[$i] - $low[$i]), abs($high[$i] - $hma[$i]), abs($low[$i] - $hma[$i]));
} else {
$tr[] = max(abs($high[$i] - $low[$i]), abs($high[$i] - $close[$i]), abs($low[$i] - $close[$i]));
}
}
// 상승 및 하락의 평균을 계산합니다.
$tr_avg = array();
for ($i = 0; $i < count($tr); $i++) {
if ($i >= $period) {
$tr_avg[] = array_sum(array_slice($tr, $i - $period + 1, $period)) / $period;
} else {
$tr_avg[] = array_sum(array_slice($tr, 0, $i + 1)) / ($i + 1);
}
}
// ADX를 계산합니다.
$adx = array();
for ($i = 0; $i < count($tr_avg); $i++) {
if ($i >= $period) {
$adx[] = 100 * abs(($tr_avg[$i] - $tr_avg[$i - 1]) / $tr_avg[$i]);
} else {
$adx[] = 0;
}
}
return $adx;
}
// 예제 데이터
$high = array(100, 120, 110, 130, 140, 150, 160, 170, 180, 190, 200, 210, 220, 230, 240, 250, 260, 270, 280, 290, 300);
$low = array(90, 100, 90, 110, 120, 130, 140, 150, 160, 170, 180, 190, 200, 210, 220, 230, 240, 250, 260, 270, 280);
$close = array(95, 115, 105, 125, 135, 145, 155, 165, 175, 185, 195, 205, 215, 225, 235, 245, 255, 265, 275, 285, 295);
// ADX 계산
$adx = adx($high, $low, $close);
// 결과 출력
for ($i = 0; $i < count($adx); $i++) {
echo "ADX($i) = $adx[$i]
";
}
이 예제는 21일치 데이터를 사용하여 ADX를 계산합니다. 결과는 각 날짜의 ADX 값이 출력됩니다.
ADX의 사용 방법
ADX는 시장의 강도나 강약을 측정하는 데 사용됩니다. 강도는 시장의 가격이 상승하거나 하락하는 속도에 대한 지표입니다.
* ADX가 25 이상일 때는 시장의 가격이 상승하거나 하락하는 속도가 빠르다는 것을 의미합니다.
* ADX가 25 이하일 때는 시장의 가격이 상승하거나 하락하는 속도가 느르다는 것을 의미합니다.
* ADX가 0에 가까울 때는 시장의 가격이 거의 움직이지 않는다는 것을 의미합니다.
ADX는 시장의 강도나 강약을 측정하는 데 사용되는 기술적 분석 도구입니다. 시장의 가격이 상승하거나 하락하는 속도를 측정하여 투자 결정을 내릴 수 있습니다.
-
- 나우호스팅 @pcs8404
-
호스팅포럼 화이팅!
댓글목록
등록된 댓글이 없습니다.