Skip to content

Instantly share code, notes, and snippets.

@yuyasugano
yuyasugano / Truffle Mocha MetaCoin revert
Created May 22, 2019 09:55
Truffle Mocha MetaCoin Test refactoring
const MetaCoin = artifacts.require("./MetaCoin.sol");
const utils = require('./utils.js');
contract('MetaCoin', (accounts) => {
describe('Token', () => {
let balance;
let instance;
const [alice, bob] = accounts;
before(async () => {
@yuyasugano
yuyasugano / Truffle Mocha MetaCoin final
Created May 22, 2019 10:22
Truffle Mocha MetaCoin Test refactoring
const MetaCoin = artifacts.require("./MetaCoin.sol");
const utils = require('./utils.js');
contract('MetaCoin', (accounts) => {
describe('Token', () => {
let balance;
let instance;
const [alice, bob] = accounts;
before(async () => {
@yuyasugano
yuyasugano / Athena SQL for apache logs
Last active May 15, 2020 04:52
Data Analytics lesson example
CREATE EXTERNAL TABLE IF NOT EXISTS <Database>.<Table> (
host STRING,
identity STRING,
user STRING,
time STRING,
request STRING,
status STRING,
size STRING,
referer STRING,
agent STRING
@yuyasugano
yuyasugano / Seaborn Sample for python-bitbankcc
Created August 15, 2019 12:39
Seaborn Sample drawing with data of python-bitbankcc
#!/usr/bin/python
import json
import pandas as pd
import seaborn as sns
import python_bitbankcc
# Ticker information
def get_btc(obj):
ret = obj.get_ticker('btc_jpy')
return ret
@yuyasugano
yuyasugano / Matplotlib Moving Average
Created August 18, 2019 03:17
Matplotlib Moving Average sample
# df copy
df_ = df.copy()
df_["ma25"] = df_.close.rolling(window=25).mean()
df_["ma75"] = df_.close.rolling(window=75).mean()
df_["diff"] = df_.ma25-df_.ma75
df_["unixtime"] = [datetime.timestamp(t) for t in df.index]
# line and Moving Average
xdate = [x.date() for x in df_.index]
plt.figure(figsize=(15,5))
@yuyasugano
yuyasugano / Matplotlib Bollinger
Created August 18, 2019 03:50
Matplotlib Bollinger sample
def Bollinger(df, window=25):
df1 = df.copy()
df1["ma"] = df1.close.rolling(window=window).mean()
df1["sigma"] = df1.close.rolling(window=window).std()
df1["ma+2sigma"] = df1.ma + 2*df1.sigma
df1["ma-2sigma"] = df1.ma - 2*df1.sigma
df1["diffplus"] = df1.close - df1["ma+2sigma"]
df1["diffminus"] = df1["ma-2sigma"] - df1.close
s_up = df1[df1["diffplus"] > 0]["close"]
s_down = df1[df1["diffminus"] > 0]["close"]
@yuyasugano
yuyasugano / Matplotlib MACD
Created August 18, 2019 04:14
Matplotlib MACD sample
def MACD(df):
df1 = df.copy()
df1["MACD"] = df1.close.ewm(span=12, min_periods=1).mean() - df1.close.ewm(span=26, min_periods=1).mean()
df1["signal"] = df1.MACD.ewm(span=9, min_periods=1).mean()
df1["macd_diff"] = df1["MACD"] - df1["signal"]
xdate = [x.date() for x in df1.index]
plt.figure(figsize=(15,10))
# plot the original
plt.subplot(211)
@yuyasugano
yuyasugano / Matplotlib RSI
Created August 18, 2019 04:54
Matplotlib RSI sample
def plot_RSI(df, window):
df1 = df.copy()
diff = df1.close.diff(periods=1).values
xdate = [x.date() for x in df1.index]
RSI = []
for i in range(window+1, len(xdate)):
neg = 0
pos = 0
for value in diff[i-window:i+1]:
if value > 0:
@yuyasugano
yuyasugano / Matplotlib Ichimoku
Created August 18, 2019 05:10
Matplotlib Ichimoku sample
def Ichimoku(df):
df1 = df.copy()
max_9 = df1.high.rolling(window=9).max()
min_9 = df1.high.rolling(window=9).min()
df1["tenkan"] = (max_9+min_9)/2
df1["base"] = (df1.high.rolling(window=26).max()+df1.high.rolling(window=26).min())/2
xdate = [x.date() for x in df1.index]
plt.figure(figsize=(15,5))
plt.grid()
plt.plot(xdate, df1.close, color="b", lw=1, linestyle="dotted", label="original")
@yuyasugano
yuyasugano / Pubnub for bitbank.cc Realtime API
Created August 22, 2019 09:06
Pubnub for bitbank.cc Realtime API
from pubnub.pubnub import PubNub
from pubnub.enums import PNStatusCategory
from pubnub.callbacks import SubscribeCallback
from pubnub.pnconfiguration import PNConfiguration
SUBSCRIBE_KEY = 'sub-c-e12e9174-dd60-11e6-806b-02ee2ddab7fe'
TICKER_CHANNEL = 'ticker_btc_jpy'
class BitbankSubscriberCallback(SubscribeCallback):
def presence(self, pubnub, presence):