Is DodgeCoin going to the Moon?

Will Dogecoin hit $1 let’s find out using Python

Rahul Raj
Rahul Raj
May 3 · 8 min read
Photo by Executium on Unsplash

Dogecoin is a peer-to-peer cryptocurrency that gets its name from a popular internet meme.

Can a joke be taken seriously? In 2013, Dogecoin was created as a way to poke fun at an industry that took itself too seriously. Now it’s one of the world’s biggest cryptocurrencies, but how did it get here? We take a look below.

Dogecoin is a cryptocurrency that takes its name from an internet meme. It started as a way to mock the industry but quickly built up a lively community of enthusiasts. It has come a long way since 2013, hitting a $2 billion market value at its peak in the January 2018 crypto craze.

Jackson Palmer, an Adobe employee, couldn’t believe the huge number of altcoins that were popping up in 2013. As a joke, he sent out a tweet saying he was investing in Dogecoin — a fake coin based on the Shiba Inu dog meme that was popular at the time.

Even though he tweeted in jest, several people thought he was on to something. They said the industry really needed a light-hearted token that could counter the more controversial coins on offer. So Palmer teamed up with Billy Markus, a programmer, to make Dogecoin a reality.

  • Dec 2013 — Dogecoin was founded by Jackson Palmer
  • June 2014 — The Dogecoin Foundation is established to preside over the currency’s code
  • April 2015 — Co-founder Jackson Palmer leaves Dogecoin
  • January 2018 — It briefly surpasses $2 billion market cap
  • May 2019 — Dogecoin is added to the popular Coinbase Wallet.
  • March 2020Elon Musk says Dogecoin is the best cryptocurrency

Did you know?

Billy Markus, Dogecoin’s co-founder, goes by the nickname ‘Shibetoshi Nakamoto’. It’s a play on the dog meme, along with Bitcoin’s mysterious founder Satoshi Nakamoto.

What’s so special about it?

  • Speed and cost — It boast fast transactions and low transaction fees — both essential for wide adoption.
  • Unlimited supply — Originally the coin was capped at 100 billion coins, but it was later changed to an unlimited supply. That keeps the price relatively stable.
  • Community — The heart of Dogecoin is its active community. The more than 100,000 members on Reddit are renowned for being a friendly and welcoming bunch.
  • Philanthropy — That same community has been known to rally around good causes. They raised more than $25,000 in Dogecoin to help send the cash-strapped Jamaican bobsled team to the 2014 Olympics. They also teamed up with a water charity to raise thousands to improve clean water access in Kenya.

Like a lot of cryptocurrencies, Dogecoin can be mined (see more on mining, here). It was built using the proof-of-work hashing algorithm Scrypt (based on Litecoin), so it takes a lot less computing power than Bitcoin mining.

Miners can mine Dogecoin by themselves, or as part of a mining pool.

Since there is an unlimited supply of Dogecoin tokens, the value of a single token is very low compared to other altcoins. That means mining isn’t very profitable, so there isn’t much incentive. The low reward doesn’t deter Dogecoin enthusiasts, though. To them, it was never intended to be an investment; it was meant to be a dynamic currency.

The upside of Dogecoin’s never-ending supply of tokens is that the price stays relatively stable. The downside is that the price usually remains very low. Most people get into the crypto world as an investment. They hope that if they hang onto certain tokens long enough, they can sell for a profit.

Not so with Dogecoin. Since the token supply is high and the price is low, it’s not attractive to investors looking to hold onto their currency. The result is a highly liquid, free-flowing peer-to-peer digital currency.

Let’s dive deeper into DOGE

We visualize the data in the table above with a box plot. A box plot shows the quartiles of the dataset with points that are determined to be outliers using a method of the inter-quartile range (IQR). In other words, the IQR is the first quartile (25%) subtracted from the third quartile (75%).

On the box plot below, we see that the ETH closing hourly price was most of the time between $0.0 and $0.06

import seaborn as sns
ax = sns.boxplot(data=hist['close'], orient="h")
import datetime
import json
import numpy as np
from fbprophet import Prophet
from neuralprophet import NeuralProphet
import pandas as pd
import requests
import matplotlib.pyplot as plt
from fbprophet.plot import plot_cross_validation_metric
import math
from sklearn.model_selection import train_test_split
endpoint = ‘https://min-api.cryptocompare.com/data/histoday'
res = requests.get(endpoint + ‘?fsym=DOGE&tsym=USD&limit=180’)
hist = pd.DataFrame(json.loads(res.content)[‘Data’])
hist = hist.set_index(‘time’)
hist.index = pd.to_datetime(hist.index, unit=’s’)
target_col = ‘close’
hist.describe()

Histogram of DOGE closing price

Let’s estimate the frequency distribution of ETH closing prices. The histogram shows the number of hours ETH had a certain value.

Observations

  • DOGE closing price was not over $.07 for many hours.
  • The blue dashed line (median) shows that half of the time closing prices were under $.045.
hist[‘close’].plot(grid=True, figsize=(15, 10))
df_return = hist[‘close’]/hist[‘close’].shift(90)-1
df_return=df_return.dropna()
df_return.plot(grid=True, figsize=(15, 10)).axhline(y = 1, color = “black”, lw = 2)

Trading Strategy

A trading strategy is a set of objective rules defining the conditions that must be met for trade entry and exit to occur.

We are going to apply Ichimoku Cloud

The Ichimoku Cloud indicator is a technical indicator of Japanese origin and was a proprietary indicator with its Japanese formulator for around 30 years.

It involves calculating five lines of short to the medium duration on the high, low, and close of a security’s prices and plotting an area, between two of these five lines, better known as Ichimoku cloud.

These lines help in determining the direction, momentum and support-resistance levels for the time series data. The Ichimoku cloud indicator also generates buy and sell trading signals and is usually plotted along with candlestick to enable better decision making and clearer plots.

Calculations for the lines are simple and the time period chosen is somewhat arbitrary:

  1. Tenkan Sen or Conversion Line: (20-period-high + 20-period-low)/2
  2. Kijun Sen or Base Line: (60-period-high + 60-period-low)/2
  3. Senkou Sen A or Leading Span A: (Base Line + Conversion Line)/2
  4. Senkou Sen B or Leading Span B: (120-period-high + 120-period-low)/2
  5. Chikou Span or Lagging Span: (Close of 30 periods ago)

The Direction Of The Price Action

The Ichimoku cloud is formed between the Leading Span A and Leading Span B and helps in determining the strength and direction of the price action. For example, the direction or trend of the price action is up when the prices are above the Ichimoku cloud. Similarly, the direction of the price action is down when prices are below the Ichimoku cloud and the direction is flat when the prices are somewhere in the Ichimoku cloud.

The Strength Of The Price Action

The Strength can be estimated using the difference between the Leading Span A and B lines. When the Leading Span A is increasing and above the other span line, the increase in the difference signifies strength in the uptrend. It also means that the Ichimoku cloud is getting thicker. Similarly, the growth of the Leading span B over the other span line signifies strength in the downtrend and the thickness of the Ichimoku cloud increases again though in the opposite direction.

import matplotlib.pyplot as plt
import chart_studio.plotly as py
import plotly.graph_objs as go
from plotly.offline import init_notebook_mode, plot, iplot
# Set colours for up and down candles
INCREASING_COLOR = ‘#17BECF’
DECREASING_COLOR = ‘#7F7F7F’
# create list to hold dictionary with data for our first series to plot
# (which is the candlestick element itself)
data1 = [ dict(
type = ‘candlestick’,
open = d.open,
high = d.high,
low = d.low,
close = d.close,
x = d.index,
yaxis = ‘y2’,
name = ‘F’,
increasing = dict( line = dict( color = INCREASING_COLOR ) ),
decreasing = dict( line = dict( color = DECREASING_COLOR ) ),
) ]
# Create empty dictionary for later use to hold settings and layout options
layout=dict()
# create our main chart “Figure” object which consists of data to plot and layout settings
fig = dict( data=data1, layout=layout )
# Assign various seeting and choices — background colour, range selector etc
fig[‘layout’][‘plot_bgcolor’] = ‘rgb(250, 250, 250)’
fig[‘layout’][‘xaxis’] = dict( rangeselector = dict( visible = True ) )
fig[‘layout’][‘yaxis’] = dict( domain = [0, 0.2], showticklabels = False )
fig[‘layout’][‘yaxis2’] = dict( domain = [0.2, 0.8] )
fig[‘layout’][‘legend’] = dict( orientation = ‘h’, y=0.9, x=0.3, yanchor=’bottom’ )
fig[‘layout’][‘margin’] = dict( t=40, b=40, r=40, l=40 )
fig[‘layout’][‘height’] = 900
fig[‘layout’][‘width’] = 1300
# Populate the “rangeselector” object with necessary settings
rangeselector=dict(
visible = True,
x = 0, y = 0.9,
bgcolor = ‘rgba(150, 200, 250, 0.4)’,
font = dict( size = 13 ),
buttons=list([
dict(count=1,
label=’reset’,
step=’all’),
dict(count=1,
label=’1yr’,
step=’year’,
stepmode=’backward’),
dict(count=3,
label=’3 mo’,
step=’month’,
stepmode=’backward’),
dict(count=1,
label=’1 mo’,
step=’month’,
stepmode=’backward’),
dict(step=’all’)
]))

fig[‘layout’][‘xaxis’][‘rangeselector’] = rangeselector
# Append the Ichimoku elements to the plot
fig[‘data’].append( dict( x=d[‘tenkan_sen’].index, y=d[‘tenkan_sen’], type=’scatter’, mode=’lines’,
line = dict( width = 1 ),
marker = dict( color = ‘#33BDFF’ ),
yaxis = ‘y2’, name=’tenkan_sen’ ) )
fig[‘data’].append( dict( x=d[‘kijun_sen’].index, y=d[‘kijun_sen’], type=’scatter’, mode=’lines’,
line = dict( width = 1 ),
marker = dict( color = ‘#F1F316’ ),
yaxis = ‘y2’, name=’kijun_sen’ ) )
fig[‘data’].append( dict( x=d[‘senkou_span_a’].index, y=d[‘senkou_span_a’], type=’scatter’, mode=’lines’,
line = dict( width = 1 ),
marker = dict( color = ‘#228B22’ ),
yaxis = ‘y2’, name=’senkou_span_a’ ) )
fig[‘data’].append( dict( x=d[‘senkou_span_b’].index, y=d[‘senkou_span_b’], type=’scatter’, mode=’lines’,
line = dict( width = 1 ),fill=’tonexty’,
marker = dict( color = ‘#FF3342’ ),
yaxis = ‘y2’, name=’senkou_span_b’ ) )
fig[‘data’].append( dict( x=d[‘chikou_span’].index, y=d[‘chikou_span’], type=’scatter’, mode=’lines’,
line = dict( width = 1 ),
marker = dict( color = ‘#D105F5’ ),
yaxis = ‘y2’, name=’chikou_span’ ) )
# Set colour list for candlesticks
colors = []
for i in range(len(d.close)):
if i != 0:
if d.close[i] > d.close[i-1]:
colors.append(INCREASING_COLOR)
else:
colors.append(DECREASING_COLOR)
else:
colors.append(DECREASING_COLOR)

iplot( fig, filename = ‘candlestick-ichimoku’ )

Conclusion

There is a price breakout movement in DogeCoin with Elon Musk coming to SNL on May 8 expect the meteoric rise of DogeCoin (bubble).

If anyone wants the code for this or an older post it's here

Analytics Vidhya

Analytics Vidhya is a community of Analytics and Data…

Sign up for Analytics Vidhya News Bytes

By Analytics Vidhya

Latest news from Analytics Vidhya on our Hackathons and some of our best articles! Take a look.

By signing up, you will create a Medium account if you don’t already have one. Review our Privacy Policy for more information about our privacy practices.

Check your inbox
Medium sent you an email at to complete your subscription.

Rahul Raj

Written by

Rahul Raj

A coder by night consultant by day. Send me a connect @ https://www.linkedin.com/in/rahul-raj-630a2779/

Analytics Vidhya

Analytics Vidhya is a community of Analytics and Data Science professionals. We are building the next-gen data science ecosystem https://www.analyticsvidhya.com

Rahul Raj

Written by

Rahul Raj

A coder by night consultant by day. Send me a connect @ https://www.linkedin.com/in/rahul-raj-630a2779/

Analytics Vidhya

Analytics Vidhya is a community of Analytics and Data Science professionals. We are building the next-gen data science ecosystem https://www.analyticsvidhya.com