라이브러리

[PHP] trader_mfi - 자금 흐름 지수




무형지수(Moving Force Index, MFI)

무형지수(Moving Force Index, MFI)는 1986년 J. Wells Wilder Jr.가 개발한 기술적 분석 도구입니다. MFI는 가격 및 거래량의 움직임을 분석하여 BUY/SELL 신호를 제공하는 데 사용됩니다.

MFI 계산 방법

MFI는 다음 3가지 요소로 계산됩니다.

1. 거래량: 14일 이동 평균 거래량을 계산합니다.
2. 가격: 14일 이동 평균 가격을 계산합니다.
3. MFI: 거래량과 가격의 이동 평균을 사용하여 MFI를 계산합니다.

MFI의 공식은 다음과 같습니다.

MFI = (14일 이동 평균 거래량 / 14일 이동 평균 가격) * 100

PHP에서 MFI 구현하기

PHP에서 MFI를 구현하는 방법은 다음과 같습니다.

#hostingforum.kr
php

function calculate_mfi($prices, $volumes, $period = 14) {

    $mfi_values = [];

    $total_volume = 0;

    $total_price = 0;



    for ($i = 0; $i < $period; $i++) {

        $total_volume += $volumes[$i];

        $total_price += $prices[$i];

    }



    $mfi_values[] = ($total_volume / $total_price) * 100;



    for ($i = $period; $i < count($prices); $i++) {

        $total_volume = $total_volume - $volumes[$i - $period] + $volumes[$i];

        $total_price = $total_price - $prices[$i - $period] + $prices[$i];

        $mfi_values[] = ($total_volume / $total_price) * 100;

    }



    return $mfi_values;

}



$prices = [10, 20, 30, 40, 50, 60, 70, 80, 90, 100, 110, 120, 130, 140, 150, 160, 170, 180, 190, 200];

$volumes = [100, 200, 300, 400, 500, 600, 700, 800, 900, 1000, 1100, 1200, 1300, 1400, 1500, 1600, 1700, 1800, 1900, 2000];



$mfi_values = calculate_mfi($prices, $volumes);



print_r($mfi_values);



위 코드는 가격과 거래량을 입력받아 MFI 값을 계산하고 출력합니다.

MFI BUY/SELL 신호

MFI BUY/SELL 신호는 다음과 같이 계산됩니다.

* BUY 신호: MFI가 80 이하일 때 BUY 신호가 발생합니다.
* SELL 신호: MFI가 20 이상일 때 SELL 신호가 발생합니다.

위 예제에서 MFI 값을 계산한 후 BUY/SELL 신호를 계산할 수 있습니다.

#hostingforum.kr
php

function calculate_buy_sell_signals($mfi_values, $period = 14) {

    $buy_signals = [];

    $sell_signals = [];



    for ($i = 0; $i < count($mfi_values); $i++) {

        if ($i >= $period && $mfi_values[$i] <= 80 && $mfi_values[$i - 1] > 80) {

            $buy_signals[] = $i;

        }

        if ($i >= $period && $mfi_values[$i] >= 20 && $mfi_values[$i - 1] < 20) {

            $sell_signals[] = $i;

        }

    }



    return [$buy_signals, $sell_signals];

}



$mfi_values = calculate_mfi($prices, $volumes);

list($buy_signals, $sell_signals) = calculate_buy_sell_signals($mfi_values);



print_r($buy_signals);

print_r($sell_signals);



위 코드는 MFI 값을 계산한 후 BUY/SELL 신호를 계산하고 출력합니다.
  • profile_image
    나우호스팅 @pcs8404 

    호스팅포럼 화이팅!

    댓글목록

    등록된 댓글이 없습니다.

  • 전체 8,985건 / 73 페이지

검색

게시물 검색