Rubyで作ったBitcoin取引プログラムをずっと稼働させたい
題の通りです。
Bitcoinの取引プログラムを作ったのでどこかで永遠に稼働しておいてほしいのですがその方法が分かりません。
Node.jsで作ったときにはforeverという便利なシステムがあったためRubyにも当然あるだろうと思っていましたが現在その永遠稼働をどうすれば実行できるのかという問題に衝突しています。
btc.rbにプログラムをかいたので
ruby btc.rb を実行すれば確かにずっと稼働するようにはなっていますが、そうではなくローカル環境で自動で稼働していてほしいです。
##コードの意図
get_priceという関数で現在のBTC価格を取得
@prices配列に格納、配列の長さは常に4
buy_or_sell関数を作り配列の中身次第で売買してくれます。
それを任意の秒ごとに行ってくれます。
該当のソースコード
コード自体に問題はないと思うため一部を乗せさせていただきます。
こちらのbtc.rbファイルにすべてのコードが乗っています
https://github.com/07130918/Bitcoin-Automatic-trading-Bitflyer-/blob/master/btc.rb
ruby
1while true 2 begin 3 current_price = get_price 4 @prices << current_price 5 @prices.shift(1) if @prices.length >= 5 6 puts "#{@prices}" 7 buy_or_sell if @prices.length >= 4 8 sleep(interval) 9 rescue => e 10 puts e 11 puts 'while trueでエラー発生 処理移行' 12 next 13 end 14end
試したこと
Process.daemonなど「ruby デーモン化」で調べて出てきた情報はあらかた試してみましたが理解が足りずうまくいきません
補足情報(FW/ツールのバージョンなど)
OS: windows 10 Pro
ruby version 2.7.2
Railsは使っていません
回答2件
あなたの回答
tips
プレビュー