レンタルサーバーで自作の自動化プログラム(bot)を定期実行させる方法

スポンサーリンク

Pythonによる自動売買Botの作り方

これまでの記事でシステムトレード(自動売買)とはどういうものなのか、プログラムで実装するにあたって意識すべき点、オススメのプログラミング言語、実際にテクニカル指標を使った簡単な自動売買Botのプログラムの作り方について説明してきました。Botの作り方や簡単なサンプルコードは以下の記事に書いています。

/・・・シリーズ記事一覧・・・/

Pythonで自動売買Botを作る①~システムトレードの流れを把握する

Pythonで自動売買Botを作る②~仮想通貨取引所からビットコインの価格を取得する

Pythonで自動売買Botを作る③~プライベートAPIを使って仮想通貨を売買する

Pythonで自動売買Botを作る④~テクニカル指標を用いた自動売買botを作って動かしてみる(コピペで実行できるコード付き)

プログラムを24時間365日、常時実行させるための方法

そして、これまでの記事で取引所で自動でビットコインの売買を行う自動取引Botを作ったわけですが、Botをずっと稼働させるとなるとコードだけでは不十分です、というのもプログラムはコンピューター上で動くので、プログラムを常に実行させるためには、プログラムを実行させるサーバー(コンピュータ)をずっと起動しておく必要があります。

自宅のコンピューターをずっと起動させてそこでプログラムを常時起動しておくというのもアリと言えばアリですが、それはちょっと難しいという人もいるのではないかと思います。そういうオススメなのは、レンタルサーバーを契約してそこにプログラムのソースファイルを置き、常時プログラムを実行させておくということ方法です。常時動かす自動取引Botだけでなく、定期的に情報を集めるクローラーなどもこういったレンタルサーバー上で実行させておるという人は結構います。

スポンサーリンク

レンタルサーバーの選び方

というわけで、自分の作ったプログラムを常時実行したり定期的に実行したりする場合は、レンタルサーバーを契約してそこでプログラムを実行するのがオススメです。そして、レンタルサーバーの選び方としてはまず自分の使いたいプログラミング言語に対応しているかどうかです。例えば今回のPythonの自動取引プログラムはもちろんPythonで書かれているため、プログラムを実行させるためには、Pythonが使えるレンタルサーバーであることがまず前提条件です。

昨今は利用料金が格安なレンタルサーバーも沢山ありますが、ブログ用にWordpress(ワードプレス)だけしか使用権限がないレンタルサーバーも多いです。間違ってそういうレンタルサーバーと契約してしまうと、自分で作ったプログラムをサーバー上で定期的に実行しようという目的で契約したものの、いざ実際に使ってみるとワードプレス以外はほぼ何もできないため、自分の使いたいプログラミング言語に対応していない無駄な手間と時間が掛かった挙句、レンタルサーバーを選びなおすハメになってしまいます。

今回のようなPythonでの自動取引プログラムや定期的にWebサイトを訪問して情報を取得するクローラーのような高度な処理が必要になってくるプログラムを実行させるレンタルサーバーの条件としては、rootまでアクセスできるroot権限のある「①VPSサーバー」であることが条件になります。

ただVPSの操作はlinux(CentOS)が分かっていないと苦労するので、linuxが分からんという人は、Windowsのリモートデスクトップの画面をそのまま提供してくれる「②Windows リモートデスクトップサーバー」で代用するのもアリかもしれません。

ここまでの内容をまとめると、Pythonなどで作った自分のプログラムをサーバー借りて定期的に実行したり、24時間常時実行させたい場合は、「①VPSサーバー」か「②Windows リモートデスクトップサーバー」の2種類のサーバーのうちのどちらかを借りるといいでしょう。

ついでに色んなレンタルサーバーを使ってみた自分の体験からレンタルサーバーを始めて借りてみるという人にもオススメのレンタルサーバーを紹介しておきます。

初心者にオススメのVPSサーバー

ですが、Pythonの強みである豊富なライブラリの関数をレンタルサーバー上で使用するためにはpipコマンドが使えるレンタルサーバーであるのが好ましいです。pipが使用できる条件としてはコンピューターの最深部であるrootにアクセスできる権限の持つroot権限付きのレンタルサーバーであることです。一般的にこのroot権限付きのレンタルサーバーのことを「VPSサーバー」と言います。

「VPSサーバー」であれば、Python・そして豊富なライブラリを搭載したAnacondaをインストールすることができることができるので、機械学習やWebスクレイピングがレンタルサーバー上でも簡単に実行することができます。

「VPSサーバー」は権限の少ないレンタルサーバーと違って、コンピューターの最深部であるrootにアクセスできる権限があるので、ブログでもサイトでもメールサーバーでも知識さえあればなんでもできます。

ただその分、↓の画像のようなコマンドラインという真っ黒な画面からPCに命令を出すのが基本なので、コマンドの知識とlinuxOS(CentOS)についての知識がない人が使うと何もできないので、中~上級者向けのサービスだと言えます。

コマンドラインは慣れないと難しいですが、将来IT業界を目指している人などは、linuxとコマンドの練習がてら始めておいても損はないと思います。そして、「VPSサーバー」のサービスを提供しているサーバー会社は多くありますが、とりあえずサーバー管理の練習がてら手始めにVPSサーバー初心者デビューするのであれば、レンタルサーバー業界大手のGMOが運営する「お名前ドットコムのVPSサーバー」がオススメです。

お名前ドットコムのVPSサーバーの詳細を見てみる

「お名前ドットコムのVPSサーバー」の良いところは「初期費用無料」かつ「月額料金が格安」な点ですね。一番性能が低い1GBプランならなんと月額980円でサーバーをレンタルすることができます。しかも「6カ月以上まとめて利用料金を支払うと実質月額790円」と格安でサーバーを借りることが可能です。

ただしVPSサーバーはSSH接続が基本なので、コマンドライン(真っ黒の画面)とlinuxのサーバー関連の知識がないと少し困ることもありますし、だれでもできるというわけではありません。そういったlinux系のサーバー知識がないという人はレンタルサーバーを自宅のデスクトップPCのように動かせる次のWindowサーバーがオススメです。

VPSサーバーにPythonのAnacondaをインストールする方法は以下のサイトで解説されているので、サーバーに申し込んで料金を支払いコンソール画面からサーバーを起動したら、下記の記事のやり方でAnacondaをインストールしてみてください。

Windowsデスクトップサーバー

次に紹介するWindowsデスクトップサーバーはレンタルサーバー上で自宅のデスクトップPCのようなWindows画面でサーバーを使うことができるレンタルサーバーです。

VPSサーバーの場合は真っ黒な画面から操作するのが基本ですが、こっちのWindowsデスクトップサーバーだと以下のような画面からサーバーの操作を行うことができるので、サーバー周りの知識がない初心者でも簡単に操作することができます。こちらだとPCの画面からデスクトップやノートのPCで実行するのと同じ要領で、プログラムをWhile文などで無限に実行しておいたり、定時起動したりすることができます。

Windowsサーバーはデスクトップ画面が付いているレンタルサーバーなので、普通の種類のレンタルサーバーと違って提供している会社の数は少ないですが、その中でも初心者にオススメなのはGMOの提供している「ConoHa for Windows Server」というWindowsデスクトップサーバーです。

利用料金の方は先ほどのVPSサーバーと違って最安プランの1GBで月額1800円と少し高くなってしまいますが、「24時間安定稼働の初期費用無料」、「最低利用期間無し」なので、とりあえずWindowsのレンタルサーバーを触ってみたい人にオススメです。


ConoHa for Windows Serverの詳細を見てみる

まとめ

以上がプログラムを定期実行したり、常時実行させるため方法とレンタルサーバー初心者にオススメなサービスのまとめです。レンタルサーバーを使用するにあたっての予算の最低額はひと月あたり1000~2000円くらいが目安ですね。自分で定期的に自動でデータを集めるようなプログラムを組むことができるようになるとプログラミングもやっていて楽しくなりますね!

プログラミングを挫折せず最短で習得する方法


プログラミングは小学校の義務教育にも導入され始めており、これから社会人として生きていく上にあたってはもはや出来て当たり前のスキルとなりつつあります。こういう話はテレビや雑誌でも最近増えてきたので、知らない人はいないでしょう。そしてそういう話を聞いて参考書なりを購入して独学でプログラミング勉強しようと思っている人も少なくないでしょう。しかしプログラミングを独学で勉強し始めようと思うものの



・「分からない箇所で詰まって挫折してしまった」

・「勉強する時間が足りない」

・「ネットの記事だと情報が断片的でよくわからない」

・「コードのエラーの原因が分からない」



という壁にぶち当たって、プログラミングの勉強を止めてしまう方が少なくありません。独学でプログラミングを勉強してる時間のほとんどはつまづいている時間です。実際僕も最初のころ独学でプログラミングを勉強していた頃はエラーの原因が分からず丸1日を不意にしてしまった・・・そんな苦い経験がありました。



それで僕は一度はプログラミングの学習を諦めてしまいましたが、就活で現実を知る中で「プログラミングを勉強して、いずれフリーランスとして自由な生き方がしたい」「エンジニアとして若いうちから高収入を得たい」という気持ちから一念発起して侍エンジニアのwebサービスコースに申し込み、プロのエンジニアの方に対面でマンツーマンでPythonによるWebサービス作り方とWeb技術の基本を教えてもらい、ようやくプログラミングが理解できました。


侍エンジニアでは様々なコースが用意されており、HTML・cssなどでWebサイトやWebアプリを作ってみたい人からPythonを勉強してデータサイエンティストやAIエンジニアになりたい人まで幅広いニーズにこたえています。


IT業界と言ってもエンジニアの仕事はプログラミング言語次第でサーバーから機械学習まで多種多様ですし、侍エンジニアの無料レッスン(カウンセリング)を受けてみて、自分のやりたいITの仕事は何なのか?を見つけてみましょう。ちなみに今「侍エンジニア」の無料レッスンを受けると1000円分のAmazonギフト券がもらえるので、試しに受けてみるだけもお得です。







自分は半端に独学やオンラインスクールで勉強して金と時間を無駄にするくらいなら、リアルのプログラミングスクールに通ってしっかりプログラミングを勉強した方がいいと思います。ちなみに今、侍エンジニアに申し込むと、25歳以下の学生の方であれば、受講料が20%OFFになるので超お得です。


そして、プログラミングは大勢で授業を受けたり漫然とオンライン学習をするよりも自分が分からない箇所をピンポイントでプロの講師に直接質問して、ちゃんと納得するというスタイルの方がお金は確かに少し掛かりますが、独学で学ぶよりも絶対にモノになります。
スポンサーリンク

シェアする

  • このエントリーをはてなブックマークに追加

フォローする