SlideShare a Scribd company logo
Predicting ATM Withdrawal Using Double Exponential Smoothing
Evellyn Verity Mesak, Muhammad Husnurridlo
Summary
The following report describe methodology and exploratory process in prediction of ATM cash
withdrawal. The data is compiled and provided by FinHacks 2018.
We think the biggest challenge of this project is finding a pattern that can be applied for 10.626 ATM with
various withdrawal behavior. Taking several ATMs’ behavioral data as samples, we concluded that
generally, the withdrawal following two big pattern: the weekly cycle and the monthly cycle.
With that in mind, the solution we propose is establishing a level and a unique index everyday based on
the weekly and monthly cycle. For example, an ATM has 100 Mil IDR withdrawal (level). The withdrawal
on Thursday is 60% of level, and the withdrawals on 29th
every month is 150% of level. With those numbers
known, we can predict the withdrawal for Thursday March 29th
.
WithdrawalMar29 = 100 Mil * 60% *150%
= 90 Mil.
Now, based on this idea, all we need to do is find the suitable level for each ATM and the index for every
day of the week and every date of the month.
The Dataset
The analysis and modelling we create is based on 881.816 daily withdrawal data of 10.626 ATM. Most
ATMs have observation from January 1st
2018 to March 24th
2018, except ATM no K10301, which only has
observation from March 19th
2018 to March 24th
2018. We use column “no atm”, “date”, and
“withdrawals” to build the model.
Feature Engineering
a. Weekly Seasonal Index
The goal in this step is to find suitable index for every day of the week. The method is pretty
simple. For each ATM, we calculate average withdrawal for each week, so we have 12 weekly
average for each week. After that, we calculate index for each day by taking the withdrawal that
day divided by weekly mean. Then, we take the average weekly index of the same day and then
average it across 12 weeks to find day index. Back to the example in the summary, this is how
we get the number 60% for Thursday.
The difficulty we faced in building this feature is there are some ATMs that has consecutives zero
withdrawals for more than 7 days. This creates error when we create day index due to division
by zero. To deal with this, we replace the zero weekly average with one.
b. Monthly Seasonal Index
The goal in this step is to find suitable index for every date of the month. By doing almost the
same step for the weekly seasonal index, this can be done. For each ATM, we calculate the
average withdrawal for each month, so we have average withdrawal for January, February, and
partial average of March. After that, we calculate index for each date by taking the withdrawal
that day divided by monthly mean. Then, we take the average monthly index of the same date
and then average it across 3 months to find date index. Back to the example in the summary, this
is how we get the number 150% for 29th
.
c. Level
This is where the double exponential smoothing plays a role. The double exponential formula
we use is as follow:
𝑎 𝑡+1 = 𝛼 ∗
𝑌𝑡
𝑆𝑡
+ (1 − 𝛼) ∗ (𝑎 𝑡 + 𝑏𝑡)
𝑏𝑡+1 = 𝛽 ∗ (𝑎 𝑡+1 − 𝑎 𝑡) + (1 − 𝛽) ∗ 𝑏𝑡
𝑦𝑡+1 = (𝑎 𝑡+1 + 𝑏𝑡+1) ∗ 𝑆 𝑚𝑜𝑛𝑡ℎ ∗ 𝑆 𝑤𝑒𝑒𝑘
The 𝛼 and 𝛽 parameter represent how fast we take new information from latest observation.
We look for the value that minimize the error between prediction and actual observation. We
use spiral optimization method to optimize the parameter values.
Prediction
After we got the latest level for each ATM that is the level at March 24th
2018, we use that level to
predict one week forward for March 25th
until March 31st
using the month and week seasonality that we
have calculated before. The equation become:
𝑦𝑖 = (𝛼 + 𝛽) ∗ 𝑥𝑖
where 𝑦𝑖 is prediction for ATM withdrawal, 𝛼 and 𝛽 are level and trend respectively, and 𝑥𝑖 is actual
ATM withdrawal with error, 𝑒𝑖 is defined as
𝑒𝑖 = |
𝑦𝑖 − 𝑥𝑖
𝑥𝑖
|
We use spiral optimization method and we set minimizing error as objective function. To test if the model
is overfitted, we train the model using the data up until 18 March 2018 and use 19-24 March as “testing”
data. By using this, we have expected accuracy of 66% error fall under 25%. Following is some of the result
of our prediction
Predicting ATM Withdrawal using Modified Triple Exponential Smoothing
Predicting ATM Withdrawal using Modified Triple Exponential Smoothing

More Related Content

PPS
Lotterix pick 3 gold
PPTX
Math dictionary chapter 12
PDF
ABCi Skills for Improvement- Pareto Chart
PDF
How your account can compound by Equitimax
PDF
Normality of Distribution, Nike
PDF
1c s4 i using runcharts final
PDF
1b s4 i interpreting runcharts final
PDF
Lecture 4.2 bt
Lotterix pick 3 gold
Math dictionary chapter 12
ABCi Skills for Improvement- Pareto Chart
How your account can compound by Equitimax
Normality of Distribution, Nike
1c s4 i using runcharts final
1b s4 i interpreting runcharts final
Lecture 4.2 bt

Similar to Predicting ATM Withdrawal using Modified Triple Exponential Smoothing (20)

DOCX
DOCX
Nielsen Case Study Project
PPTX
Forecasting
DOC
Supply Chain Planning Paper
PPTX
PPTX
demand forecasting
PDF
E1802032730
PPTX
Linear regression
PPTX
Time Series Decomposition
PPT
Demand forecasting methods 1 gp
DOC
Customer Lifetime Value Modeling
PPTX
Summarizing Data by a Single Number
PDF
muthu.shree
PDF
PPTX
MovingAverage (2).pptx
PDF
Calculating Bank Withdrawal Interest and Time A Helpful Template.pdf
PPTX
MonteCarloWith@Risk
PPTX
Linear regression aims to find the "best-fit" linear line
DOCX
How to manually calculate loan equal monthly installments
PDF
Applied Mathematics project final report
Nielsen Case Study Project
Forecasting
Supply Chain Planning Paper
demand forecasting
E1802032730
Linear regression
Time Series Decomposition
Demand forecasting methods 1 gp
Customer Lifetime Value Modeling
Summarizing Data by a Single Number
muthu.shree
MovingAverage (2).pptx
Calculating Bank Withdrawal Interest and Time A Helpful Template.pdf
MonteCarloWith@Risk
Linear regression aims to find the "best-fit" linear line
How to manually calculate loan equal monthly installments
Applied Mathematics project final report
Ad

Recently uploaded (20)

PPTX
Supervised vs unsupervised machine learning algorithms
PPT
Reliability_Chapter_ presentation 1221.5784
PDF
Galatica Smart Energy Infrastructure Startup Pitch Deck
PPTX
Acceptance and paychological effects of mandatory extra coach I classes.pptx
PDF
BF and FI - Blockchain, fintech and Financial Innovation Lesson 2.pdf
PDF
168300704-gasification-ppt.pdfhghhhsjsjhsuxush
PPTX
ALIMENTARY AND BILIARY CONDITIONS 3-1.pptx
PDF
Clinical guidelines as a resource for EBP(1).pdf
PPTX
Business Acumen Training GuidePresentation.pptx
PDF
Foundation of Data Science unit number two notes
PDF
Lecture1 pattern recognition............
PPTX
Introduction to machine learning and Linear Models
PPTX
Computer network topology notes for revision
PPTX
Data_Analytics_and_PowerBI_Presentation.pptx
PPTX
Business Ppt On Nestle.pptx huunnnhhgfvu
PPTX
IB Computer Science - Internal Assessment.pptx
PPTX
mbdjdhjjodule 5-1 rhfhhfjtjjhafbrhfnfbbfnb
PDF
.pdf is not working space design for the following data for the following dat...
PDF
“Getting Started with Data Analytics Using R – Concepts, Tools & Case Studies”
PPTX
IBA_Chapter_11_Slides_Final_Accessible.pptx
Supervised vs unsupervised machine learning algorithms
Reliability_Chapter_ presentation 1221.5784
Galatica Smart Energy Infrastructure Startup Pitch Deck
Acceptance and paychological effects of mandatory extra coach I classes.pptx
BF and FI - Blockchain, fintech and Financial Innovation Lesson 2.pdf
168300704-gasification-ppt.pdfhghhhsjsjhsuxush
ALIMENTARY AND BILIARY CONDITIONS 3-1.pptx
Clinical guidelines as a resource for EBP(1).pdf
Business Acumen Training GuidePresentation.pptx
Foundation of Data Science unit number two notes
Lecture1 pattern recognition............
Introduction to machine learning and Linear Models
Computer network topology notes for revision
Data_Analytics_and_PowerBI_Presentation.pptx
Business Ppt On Nestle.pptx huunnnhhgfvu
IB Computer Science - Internal Assessment.pptx
mbdjdhjjodule 5-1 rhfhhfjtjjhafbrhfnfbbfnb
.pdf is not working space design for the following data for the following dat...
“Getting Started with Data Analytics Using R – Concepts, Tools & Case Studies”
IBA_Chapter_11_Slides_Final_Accessible.pptx
Ad

Predicting ATM Withdrawal using Modified Triple Exponential Smoothing

  • 1. Predicting ATM Withdrawal Using Double Exponential Smoothing Evellyn Verity Mesak, Muhammad Husnurridlo Summary The following report describe methodology and exploratory process in prediction of ATM cash withdrawal. The data is compiled and provided by FinHacks 2018. We think the biggest challenge of this project is finding a pattern that can be applied for 10.626 ATM with various withdrawal behavior. Taking several ATMs’ behavioral data as samples, we concluded that generally, the withdrawal following two big pattern: the weekly cycle and the monthly cycle. With that in mind, the solution we propose is establishing a level and a unique index everyday based on the weekly and monthly cycle. For example, an ATM has 100 Mil IDR withdrawal (level). The withdrawal on Thursday is 60% of level, and the withdrawals on 29th every month is 150% of level. With those numbers known, we can predict the withdrawal for Thursday March 29th . WithdrawalMar29 = 100 Mil * 60% *150% = 90 Mil. Now, based on this idea, all we need to do is find the suitable level for each ATM and the index for every day of the week and every date of the month. The Dataset The analysis and modelling we create is based on 881.816 daily withdrawal data of 10.626 ATM. Most ATMs have observation from January 1st 2018 to March 24th 2018, except ATM no K10301, which only has observation from March 19th 2018 to March 24th 2018. We use column “no atm”, “date”, and “withdrawals” to build the model. Feature Engineering a. Weekly Seasonal Index The goal in this step is to find suitable index for every day of the week. The method is pretty simple. For each ATM, we calculate average withdrawal for each week, so we have 12 weekly average for each week. After that, we calculate index for each day by taking the withdrawal that day divided by weekly mean. Then, we take the average weekly index of the same day and then average it across 12 weeks to find day index. Back to the example in the summary, this is how we get the number 60% for Thursday. The difficulty we faced in building this feature is there are some ATMs that has consecutives zero withdrawals for more than 7 days. This creates error when we create day index due to division by zero. To deal with this, we replace the zero weekly average with one.
  • 2. b. Monthly Seasonal Index The goal in this step is to find suitable index for every date of the month. By doing almost the same step for the weekly seasonal index, this can be done. For each ATM, we calculate the average withdrawal for each month, so we have average withdrawal for January, February, and partial average of March. After that, we calculate index for each date by taking the withdrawal that day divided by monthly mean. Then, we take the average monthly index of the same date and then average it across 3 months to find date index. Back to the example in the summary, this is how we get the number 150% for 29th . c. Level This is where the double exponential smoothing plays a role. The double exponential formula we use is as follow: 𝑎 𝑡+1 = 𝛼 ∗ 𝑌𝑡 𝑆𝑡 + (1 − 𝛼) ∗ (𝑎 𝑡 + 𝑏𝑡) 𝑏𝑡+1 = 𝛽 ∗ (𝑎 𝑡+1 − 𝑎 𝑡) + (1 − 𝛽) ∗ 𝑏𝑡 𝑦𝑡+1 = (𝑎 𝑡+1 + 𝑏𝑡+1) ∗ 𝑆 𝑚𝑜𝑛𝑡ℎ ∗ 𝑆 𝑤𝑒𝑒𝑘 The 𝛼 and 𝛽 parameter represent how fast we take new information from latest observation. We look for the value that minimize the error between prediction and actual observation. We use spiral optimization method to optimize the parameter values. Prediction After we got the latest level for each ATM that is the level at March 24th 2018, we use that level to predict one week forward for March 25th until March 31st using the month and week seasonality that we have calculated before. The equation become: 𝑦𝑖 = (𝛼 + 𝛽) ∗ 𝑥𝑖 where 𝑦𝑖 is prediction for ATM withdrawal, 𝛼 and 𝛽 are level and trend respectively, and 𝑥𝑖 is actual ATM withdrawal with error, 𝑒𝑖 is defined as 𝑒𝑖 = | 𝑦𝑖 − 𝑥𝑖 𝑥𝑖 | We use spiral optimization method and we set minimizing error as objective function. To test if the model is overfitted, we train the model using the data up until 18 March 2018 and use 19-24 March as “testing” data. By using this, we have expected accuracy of 66% error fall under 25%. Following is some of the result of our prediction