How To Compute Williams %R in JavaScript?

Member

by dedrick , in category: Third Party Scripts , a year ago

How To Compute Williams %R in JavaScript?

Facebook Twitter LinkedIn Telegram Whatsapp

1 answer

by edmond_brakus , a year ago

@dedrick 

To compute Williams %R in JavaScript, you can create a function that takes in an array of price data and a period as input, and then calculate the Williams %R value for each data point. Here's an example code snippet to compute Williams %R:

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
21
22
function calculateWilliamsR(prices, period) {
    let williamsR = [];

    for (let i = period - 1; i < prices.length; i++) {
        let highestHigh = Math.max(...prices.slice(i - period + 1, i + 1));
        let lowestLow = Math.min(...prices.slice(i - period + 1, i + 1));

        let currentPrice = prices[i];
        let williamsValue = ((highestHigh - currentPrice) / (highestHigh - lowestLow)) * -100;

        williamsR.push(williamsValue);
    }

    return williamsR;
}

// Example usage
let prices = [10, 12, 15, 14, 16, 13, 11, 10];
let period = 5;

let williamsRValues = calculateWilliamsR(prices, period);
console.log(williamsRValues);


In this code snippet, the calculateWilliamsR function loops through the price data array and calculates the highest high and lowest low prices over the specified period. It then computes the Williams %R value for each data point and stores them in an array. Finally, the function returns the array of Williams %R values.


You can adjust the prices array and period variable according to your data and requirements.

Related Threads:

How to run insert sparql queries from r?
How To Calculate Support and Resistance levels in R?
How to get correct website url from a redirect in r?
How to remove '\r\n' from base64 string in oracle?
How to fix 'javascript heap out of memory' error in nuxt 3?
How to update an iframe with javascript?