• 沒有找到結果。

立 政 治 大 學

N a tio na

l C h engchi U ni ve rs it y

6.2 Future Work

In this thesis, the features are extracted from exchange center and blockchain. However, it is obvious that the economic environment could affect the price of Bitcoin. Extracting economic features such as stock market index and foreign exchange rate could reflect the condition of other financial markets. On the other hand, new positive and negative information could also affect the price. Therefore, an integration of features from more different sources may benefit the model performance.

Also, we do not adopt trading strategies over the model to form a system. It could be another topic of research where the system will have to coordinate the trained model with trading strategies and strive to obtain profit. The system should figure out what actions to take in order to attain the best return. Reinforcement learning is a study of decision making process. Inspired by neural network and deep learning, deep reinforcement learning (DRL) is a technique which combines both deep learning and reinforcement learning. It is possible to build a profitable DRL system where Bitcoin can be automatically traded.

‧ 國

立 政 治 大 學

N a tio na

l C h engchi U ni ve rs it y

Appendix A

Feature Description and Representation

Feature description and representation Feature Description and Representation

Open The price at the starting point in the time interval Close The price at the ending point in the time interval

Low Lowest price in the time interval High Highest price in the time interval

Volume The number of Bitcoin being traded in exchange center during the time interval.

Moving average 5

mins The short term average price Moving average 30

mins The medium term average price Moving average 60

mins The long term average price Moving median 5

mins The short term middle price Moving median 30

mins The medium term middle price

Continued on next page

Table A.1 – Continued from previous page Feature Description and Representation

Moving median 60

mins The long term middle price Moving std 5 mins the short term volatility Moving std 30 mins the medium term volatility Moving std 60 mins the long term volatility

Block height The height of the block.

Block difficulty The difficulty to mine a block when the block is mined.

Block size How many data are stored in the block. Representing the number and the size of transaction.

Block confirmation time

How long it takes for a block to be confirmed. The time spent on confirming last 6 blocks.

Miner’s revenue The mining reward plus total transaction fee. The incentive of validating transactions.

Miner’s revenue per

tx The Miner revenue per transaction.

Number of tx The number of transaction in this block.

Number of unique address

The number of unique address that either send or receive Bitcoin in at least one transaction in the block.

Block total output The total output of the block.

Tx output mean The mean of transactions’ output. Indication of the average value transferred in each transaction.

Tx output median The transaction’s output whose value is in the middle among all transactions in the block.

Tx output variance The variance of transactions’ output. How transactions’ output are spread out.

Tx output std The standard deviation of transactions’ output. How transactions’ output are spread out.

Open Directly retrieve from GDAX API.

Close Directly retrieve from GDAX API.

Low Directly retrieve from GDAX API.

High Directly retrieve from GDAX API.

Volume Directly retrieve from GDAX API.

Moving average 5

Table B.1 – Continued from previous page Feature Calculation

Moving std 5 mins 1

5

t−1

i=t−5

(pricei− pricema5)2

Moving std 30 mins 1

30

t−1

i=t−30

(pricei− pricema30)2

Moving std 60 mins 1

60

t−1

i=t−60

(pricei− pricema60)2

Block height Extract the value of height attribute from block.

Block difficulty Extract the value of difficulty attribute from block.

Block size Extract the value of size attribute from block.

Block confirmation

time Block t’s timestamp - Block t-6’s timestamp.

Miner’s revenue Retrieve the coinbase transaction from a block and add up the value attribute of vout attribute of all transactions in a block.

Continued on next page

‧ 國

立 政 治 大 學

N a tio na

l C h engchi U ni ve rs it y

Table B.1 – Continued from previous page Feature Calculation

Miner’s revenue per

tx Miner’s Revenue divided by Number of transaction.

Number of tx Calculating the length of tx attribute of a block.

Number of unique address

Calculating the number of unique addresses in transaction of a block either in input side or output side.

Block total output

tx∈block

value∈vout

tx[vout][value]

Tx output mean Block total output divided by Number of tx.

Tx output median Sort the transaction output and return the middle one.

Tx output variance The variance of a block’s transactions’ output.

Tx output std The standard deviation of a block’s transactions’ output.

‧ 國

立 政 治 大 學

N a tio na

l C h engchi U ni ve rs it y

References

[1] S. Hochreiter and J. Schmidhuber, “Long short-term memory,” Neural Computation, vol. 9, no. 8, 1997.

[2] S. Nakamoto, “Bitcoin: A peer-to-peer electronic cash system,” 2009.

[3] I. Goodfellow, Y. Bengio, and A. Courville, Deep Learning. MIT Press, 2016.

[4] Y. LeCun, Y. Bengio, and G. Hinton, “Deep learning,” Nature, vol. 521, 2015.

[5] F. A. Gers, J. A. Schmidhuber, and F. A. Cummins, “Learning to forget: Continual prediction with lstm,” Neural Comput., vol. 12, no. 10, 2000.

[6] S. J. Taylor, An Introduction to Volatility. Princeton University Press, 2005.

[7] Investopedia. Volatility. [Online]. Available: https://www.investopedia.com/terms/

v/volatility.asp

[8] W. Huang, Y. Nakamori, and S.-Y. Wang, “Forecasting stock market movement direction with support vector machine,” Computers & Operations Research, vol. 32, no. 10, 2005.

[9] S. A. Hamid and Z. Iqbal, “Using neural networks for forecasting volatility of sp 500 index futures prices,” Journal of Business Research, 2004.

[10] A. Vejendla and D. Enke, “Evaluation of garch, rnn and fnn models for forecasting volatility in the financial markets,” IUP Journal of Financial Risk Management, vol. 10, no. 1, 2013.

[11] R. Akita, A. Yoshihara, T. Matsubara, and K. Uehara, “Deep learning for stock prediction using numerical and textual information,” in 2016 IEEE/ ACIS 15th International Conference on Computer and Information Science (ICIS), 2016.

[12] M. Matta, M. I. Lunesu, and M. Marchesi, “Bitcoin spread prediction using social and web search media,” in UMAP Workshops, 2015.

[13] I. Madan and S. Saluja, “Automated bitcoin trading via machine learning algorithms,” Stanford University, 2014.

[14] A. Greaves and B. Au, “Using the bitcoin transaction graph to predict the price of bitcoin,” Stanford University, 2015.

[15] S. McNally, “Predicting the price of bitcoin using machine learning,” Master’s thesis, Dublin, National College of Ireland, 2016.

[16] H. Jang and J. Lee, “An empirical study on modeling and prediction of bitcoin prices with bayesian neural networks based on blockchain information,” IEEE Access, vol. 6, 2018.

[17] Y. Bengio, “Learning deep architectures for ai,” Foundations and Trends® in Machine Learning, vol. 2, no. 1, 2009.

[18] Y. Bengio, A. Courville, and P. Vincent, “Representation learning: A review and new perspectives,” IEEE Transactions on Pattern Analysis and Machine Intelligence, vol. 35, no. 8, 2013.

[19] J. L. Elman, “Finding structure in time,” Cognitive Science, vol. 14, no. 2, 1990.

[20] Z. C. Lipton, “A critical review of recurrent neural networks for sequence learning,”

CoRR, vol. abs/1506.00019, 2015.

[21] A. Graves, Supervised Sequence Labelling with Recurrent Neural Networks.

Springer-Verlag Berlin Heidelberg, 2012.

[22] K. Greff, R. K. Srivastava, J. Koutník, B. R. Steunebrink, and J. Schmidhuber,

“LSTM: A search space odyssey,” CoRR, vol. abs/1503.04069, 2015.

[23] Wikipedia contributors, “Loss functions for classification — Wikipedia, the free encyclopedia,” 2018. [Online]. Available: https://en.wikipedia.org/w/index.php?

title=Loss_functions_for_classification&oldid=838253245

[24] Wikipedia contributors, “Gradient descent — Wikipedia, the free encyclopedia,”

2018. [Online]. Available: https://en.wikipedia.org/w/index.php?title=Gradient_

descent&oldid=845809247

[25] R. Rojas, Neural Networks: A Systematic Introduction. Berlin, Heidelberg:

Springer-Verlag, 1996.

[26] J. Bergstra and Y. Bengio, “Random search for hyper-parameter optimization,” J.

Mach. Learn. Res., vol. 13, 2012.

[27] N. Srivastava, G. Hinton, A. Krizhevsky, I. Sutskever, and R. Salakhutdinov,

“Dropout: A simple way to prevent neural networks from overfitting,” Journal of Machine Learning Research, vol. 15, 2014.

[28] S. Ruder, “An overview of gradient descent optimization algorithms,” CoRR, vol.

abs/1609.04747, 2016.

[29] D. P. Kingma and J. Ba, “Adam: A method for stochastic optimization,” CoRR, vol.

abs/1412.6980, 2014.

[30] S. Dziembowski, “Introduction to cryptocurrencies,” 2015.

[31] I. Bentov, A. Gabizon, and A. Mizrahi, “Cryptocurrencies without proof of work,”

CoRR, vol. abs/1406.5694, 2014.

[32] Proof of work. [Online]. Available: https://en.bitcoin.it/wiki/Proof_of_work

[33] A. Narayanan, J. Bonneau, E. W. Felten, A. Miller, S. Goldfeder, and J. Clark, Bitcoin and Cryptocurrency Technologies. Princeton University Press, 2016.

[34] Gdax exchange center documentation. [Online]. Available: https://docs.gdax.com/

[35] blockchain.info. [Online]. Available: https://blockchain.info/

‧ 國

立 政 治 大 學

N a tio na

l C h engchi U ni ve rs it y

[36] T. Hastie, R. Tibshirani, and J. Friedman, The Elements of Statistical Learning.

Springer New York Inc., 2001.

[37] Keras. [Online]. Available: https://keras.io/

[38] Nvidia. [Online]. Available: http://www.nvidia.com/page/home.html

[39] A. Karpathy, “The unreasonable effectiveness of recurrent neural networks,” 2015.

[Online]. Available: http://karpathy.github.io/2015/05/21/rnn-effectiveness/

相關文件