How To Calculate Williams %R in Perl?

by garnet.barrows , in category: Technology , a year ago

How To Calculate Williams %R in Perl?

Facebook Twitter LinkedIn Telegram Whatsapp

1 answer

by bria_metz , a year ago

@garnet.barrows 

Williams %R is a technical analysis indicator that measures overbought or oversold conditions of a security. In Perl, you can calculate Williams %R using the following steps:

  1. Define variables for the high, low, and close prices of the security.
  2. Calculate the highest high and lowest low prices over a specified period (usually 14 days).
  3. Calculate the Williams %R value using the formula:


Williams %R = ((Highest High - Close) / (Highest High - Lowest Low)) * -100


Here is a sample Perl code to calculate Williams %R for a security:

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
use List::Util qw(max min);

# Define high, low, and close prices
my @high_prices = (50, 55, 60, 65, 70, 75, 80, 85, 90, 95);
my @low_prices = (40, 45, 50, 55, 60, 65, 70, 75, 80, 85);
my @close_prices = (45, 50, 55, 60, 65, 70, 75, 80, 85, 90);

# Calculate highest high and lowest low prices
my $highest_high = max @high_prices;
my $lowest_low = min @low_prices;

# Calculate Williams %R for the last close price
my $close = $close_prices[-1];
my $williams_r = (($highest_high - $close) / ($highest_high - $lowest_low)) * -100;

print "Williams %R: $williams_r
";


You can modify the code to use actual price data for a security and adjust the period for calculating the highest high and lowest low prices.

Related Threads:

How To Compute Williams %R using Scala?
How To Calculate Volume analysis in Perl?
How To Calculate Moving Averages (MA) in Perl?
How To Calculate Ichimoku Cloud using R?
How To Calculate Simple Moving Average (SMA) using Perl?
How To Compute Rate of Change (ROC) in R?