住所
-
出身
-
ハンドル名
aonionさん
ブログタイトル
Node.jsで暗号資産アービトラージ
ブログURL
https://www.kennejs.com/
ブログ紹介文
Node.jsでのビットコインアービトラージ、Webスクレイピング、MongoDBなどののハウを共有していけたらいいなと思います。
自由文
更新頻度(1年)

38回 / 63日(平均4.2回/週)

ブログ村参加:2019/02/04

aonionさんの人気ランキング

?
  • IN
  • OUT
  • PV
今日 02/21 02/20 02/19 02/18 02/17 02/16 全参加数
総合ランキング(IN) 21827 22484 22398 20635 22493 22391 22237 949632サイト
INポイント 10 10 10 20 10 10 10 80/週
OUTポイント 10 10 10 20 20 20 10 100/週
PVポイント 0 0 0 0 0 0 0 0/週
IT技術ブログ 23 26 24 23 25 25 23 7462サイト
JavaScript 1 1 1 1 1 1 1 79サイト
今日 02/21 02/20 02/19 02/18 02/17 02/16 全参加数
総合ランキング(OUT) 42795 43723 43963 42010 43840 43840 45904 949632サイト
INポイント 10 10 10 20 10 10 10 80/週
OUTポイント 10 10 10 20 20 20 10 100/週
PVポイント 0 0 0 0 0 0 0 0/週
IT技術ブログ 28 32 28 27 30 27 39 7462サイト
JavaScript 1 1 1 1 1 1 1 79サイト
今日 02/21 02/20 02/19 02/18 02/17 02/16 全参加数
総合ランキング(PV) 0 0 0 0 0 0 0 949632サイト
INポイント 10 10 10 20 10 10 10 80/週
OUTポイント 10 10 10 20 20 20 10 100/週
PVポイント 0 0 0 0 0 0 0 0/週
IT技術ブログ 0 0 0 0 0 0 0 7462サイト
JavaScript 0 0 0 0 0 0 0 79サイト

aonionさんのブログ記事

?
  • ビットコインのトランザクションの仕組み

    マスタリングビットコイン読んだので、ビットコインについてまとめてみます。 ちなみに私はブロックチェーン関係者ではなく、ビットコインについては全くの素人です。仮想通貨のバブルではあまり考えずにビットコイン売買をしていてそこそこ損してしまったので、今後も投資するかの判断として勉強した内容となります。そのため、私はどの通貨に関しても中立の立場です。ビットコインの購入を推奨するわけではありません。仮想通貨について知りたい人の一助となれば幸いです。ちなみに仮想通貨の呼び方は今は業界の人は暗号通貨と呼んでいますが、日本の偉い人の方針は暗号資産っぽいですね。私も暗号資産と呼びます。(ブログタイトルも(新聞読…

  • UQモバイルで格安で快適なスマホライフを!格安SIM

    みなさんはスマートフォンのキャリアはどこを使っていますか。 まだ、docomo、au、softbankを使っている方は格安SIMに切り替えることで大幅に家計節約ができるかもしれませんよ!我が家は夫婦で月1万円以上の節約になりました。格安SIMとは格安SIMサービスを提供する事業者MVNO(A mobile virtual network operator)は、大手通信キャリア(docomo、au、softbank)から一定の帯域を借り受けてユーザーに提供します。大手通信キャリアと違い、インフラコストがかからないため割安でユーザーにサービスを提供することができます。大幅に安くなります。利用までの…

  • 絵本読み聞かせで楽にする!スマホアプリ録音で過去の自分に読んでもらおう!

    お子さまのいるみなさん、絵本の読み聞かせしてますか?本当は読み聞かせしたいけど忘れちゃう、大変だから毎日できないって方向けのとっておき絵本時短テクを紹介したいと思います! ※正確には時短ではありませんが。絵本読み聞かせの実態絵本の有効性今でも全然苦でなく読み聞かせできてるよーって方はこの記事はスキップしてください。絵本の読み聞かせってとっても大事で、小さい子どもにはとても良い効果があるそうです。できれば毎日寝る前に読み聞かせしてあげたいところです。でも、絵本って毎日読むのって疲れるし、大変です。 正直、私にとっては苦痛でした。絵本5分とかきつい4歳ぐらいになると絵本の読み聞かせの時間って5分超…

  • MongoDBでgroup化した列をgroup化する

    MongoDBのコマンドリファレンスですの続きです。前回記事はこちらです。www.kennejs.comちょっと有益なコマンド複数の項目でgroup化した列を集計する同じくdb.collection.aggregate()を使用します。 引数に$group: {_id:"$(列名1)","$(列名2)"}のような使い方をします。サンプルデータ&コード > db.blogtest.find() { "_id" : "title" : "Node.jsでWebサーバ構築", "category" : "Node.js", "access_number" : 1 } { "_id" : "title…

  • 今からMacbook Proを買うのは避けた方が無難かも。。Flexgateの罠!

    少し前からMacbookPro2016が笑えない事態に陥ってます。 MacbookProを買おうか悩んでいる人は絶対に知っておくべき事象です!というか、避けた方が無難ではないでしょうか。Macbook Proで急に画面がつかなくなった最初に気づいたのはMacbook Proで急に画面がつかなくなったことでした。ネットで調べて切り分けは内臓ディスプレイ接続の不調(SMCリセットなどなど)とのこと。 しかし、どのやり方でも治らない。。Macbook Proを少しだけ開いた状態で電源をつけてみるどのやり方でも治らない人はMacbook Proを少しだけ開いた状態で電源をつけてみてください。 もしその…

  • レバレッジを利用して人生を飛躍させろ(書評)

    「金持ち父さんの若くして豊かに引退する方法」の書評です。 本書は金持ち父さんシリーズでも評価が高い本で、自信を持っておすすめできる名著です。レバレッジを利用して成果をあげる金持ちになるための思考をレバレッジに絞って解説してくれています。レバレッジは「てこ」を意味していて、レバレッジを利用するとは何かの力を利用して大きな成果をあげる、というような考え方です。ちょっと今の自分がいっぱいいっぱいだと感じている人や、仕事に忙殺されて自分を見失っていると感じている人にはそこから抜け出す参考になるかもしれません。本書を読むことで自分の思考や、人生設計、投資手法の幅を広げることができます。(念のためですが、…

  • MongoDBで有益なコマンド(group化した列をカウントする)

    MongoDBのコマンドリファレンスです。基本的なコマンドはMongoDB Manualを参照してください。日本語で簡単に解説してくださっているサイトも多いので「MongoDB コマンド」とか「MongoDB find」とかで検索した方が早いかもしれません。MongoDBマニュアルを使用する場合は、記事の下の方のExampleを見るのが手っ取り早いです。ちょっと有益なコマンドMongoDBはドキュメント型データベースなのでデータベースで完結する操作はRDB(Oracle DBとか)に比べると操作しづらいです。そのため、データベース操作で難しかったところをまとめてみました。group化した列をカ…

  • MongoDBでmongodumpを利用してバックアップを取得する

    ローカル環境のMacBookPro2016が不調で再起動を繰り返した際にMongoDBのデータが消えていたのでバックアップを取得することにしました。 Linux環境を想定しています。ユーザバックアップはうまくできなかったので、Databaseのバックアップのみを行なっています。1.バックアップ方法についてバックアップ方法については公式サイトを参照するといくつかの方法があるようです。 企業向けのバックアップマネージャー等もあるみたいですね。小規模な個人用途では物理的なSnapshot取得か論理バックアップ取得(mongodump)が簡単そうです。 ここでは論理バックアップ(mongodump)を…

  • IT企業に入社が決まったらやっておきたい事前勉強(Webサーバーを立ち上げて運用せよ!)

    はじめに私はNode.jsブログを書いていますが、Node.jsの運用が一番勉強になっているので、これからIT企業に飛び込む新人さんにぜひ魅力をお伝えします。この記事では大手IT企業の業務についても記載するので俯瞰してください。人間関係とかビジネススキルも大事ですが脇に置いておいて、ITリテラシーに的を絞ってます。対象読者 大手・中堅IT企業エンジニア職のに内定をもらった大学生、または入社年度が低い新人さん アプリケーションエンジニアとして内定をもらっている、もしくは希望している IT系の学部ではなく入社に不安を覚えている方(10年前の自分です) ちなみに私は日本系メーカー系大手SIerで金融…

  • Puppeteerでボタンをクリックする

    Puppeteerの基本的な書き方をコーディング例で紹介します。 Puppeteerでボタンをクリックします。Puppeteerの基本的な書き方は過去記事を参照ください。 www.kennejs.com ボタンをクリックするときの書き方 画像みたいなinputタグでtype属性が付いているようなボタンはpuppeteerのpage.click()で押すことができます。 await page.click('input[type="submit"]'); aタグでbuttonクラスが属性に含まれている場合は以下のような方法でclickできます。 const loginButton = await …

  • おすすめの英語学習(ライトノベルで英語の多読)

    みなさんは英語の多読はしていますか。 私は少しずつですがほぼ毎日英語を読む習慣をつけています。タイトル通りライトノベルをいくつか読んでみました。 多読ってなかなかしんどい(特に慣れていない方)と思うので、効果などを共有できたらなと思います。前提ライトノベルは日本の中高生向けの小説です。 簡単で読みやすい日本語が使われているため、没入することができ一週間ぐらいで読みきれます。ややオタク属性あるので人前で読んでるとかは言わないのが無難です。英訳されているものも多いのでKindle等で購入して読みます。 私の英語多読歴ですが、中学生のときにハリーポッターにチャレンジして難しすぎて撃沈しています。しば…

  • coincheck APIの使い方と注意したいポイント

    coincheck 取引所APIドキュメントを参照してコーディングします。公式サイトのサンプルプログラムでNode.jsはありませんが、他の取引所と同じなのでそこまで難しくありません。 以下のサンプルを活用してみてください。coincheck 取引所API接続のサンプルコードPublic APIサンプル(ティッカー)Public APIは認証不要です。 const request = require('request'); const path = 'api/ticker'; const endpoint = 'https://coincheck.com/' const url = endpo…

  • Puppeteerのスクレイピングを同期的に呼び出す(Async/await)

    PuppeteerのスクレイピングをAsync/awaitを使って同期的に呼び出す方法です。 Async/awaitについて理解できていれば普通に作れると思いますが、慣れていないと難しいと思いますので参考にしてください。 (私もハマりました。。。) Node.jsで非同期処理を実施するAsync/awaitの基本は以下を参照してください。 www.kennejs.com 想定している利用シーンPuppeteerはリソースを消費が激しいため貧弱な環境ではマルチタスクで実行するとサーバーがハングアップに近い状態になります。 溜まったchromeプロセスをkillしていけばいいのですが、その間スクレ…

  • Node.jsで非同期処理の戻り値を利用する(Async/await)

    Node.jsの非同期処理Node.jsで非同期処理の結果を処理する際にAsync/awaitを利用する方法です。 個人的にはcallback関数に比べて直感的に理解しづらかったので慣れない方でも理解しやすいように呼び出し元、呼び出し先(Async関数)のサンプルを用いて説明してみます。前回の記事でも記載した通り、Node.jsの非同期制御には三種類の方法があります。1. callback関数 2. Promise 3. Async/Await1.callback関数の使い方はこちらの記事を参照ください。 Node.jsで非同期処理の戻り値を利用する(Callback関数)「2.Promise…

  • Node.jsで非同期処理の戻り値を利用する(Callback関数)

    Node.jsの非同期制御(Callback関数)の使い方です。Node.jsの非同期処理Node.jsはノンブロッキングI/O処理という特徴があります。 Node.jsから他のプロセス(DBやAPI呼び出しなど)を実行した際は戻りをまたずに以降の処理が進みます。JavaScriptは元々シングルスレッドで処理されるため、Node.jsの処理は基本的にシングルスレッドで処理されます。 例: コード1 コード2 コード3 DB検索 コード4 コード5基本的にはコード1 -> 2 -> 3と処理されますが、この場合コード4はDB検索の処理完了を待ちません。 コード4でDB検索結果を使用したい場合、…

  • JavaScriptでArrow関数を覚えることのメリット

    ECMAScriptのバージョンバージョンと機能を俯瞰するにはWikipediaの表が一番わかりやすいです。 https://ja.wikipedia.org/wiki/ECMAScriptArrow関数はES6(ES2015)から採用されています。非同期関数 (async/await)はES2017から採用ですね。ちなみにNodejsのversion6ではES2017は動かないので注意です。 Node.jsは最新版を採用しましょう。www.kennejs.com Arrow関数関数の書き方が簡略化される最新のライブラリやWebチュートリアルなどはArrow関数で書かれていることが多いため、覚…

  • Liquid by Quoine APIの使い方と注意したいポイント

    Liquid by Quoinex APIドキュメントを参照してコーディングします。サンプルプログラムがrubyしかないので、初めての人にはきついかもしれません。 BitFlyerとか他の取引所のAPIを使ったことがあればポイントは同じなのでAPIドキュメント見ながら作れます。[Liquid by Quoine]API接続のサンプルコードPublic APIサンプルPublic APIは認証不要です。コーディングもそんなに難しくはないです。 //getPrice functionで価格(Last Price, Bid, Ask)を取得 const request = require('requ…

  • エンジニアにおすすめの英会話学習法

    エンジニアにおすすめとしていますが、普遍的な英会話学習法だと思います。国内SIerで必要な英語スキル私は国内SIerの社員ですが、会社全体の英語力がほんとに低いです。 もちろん、すごくできる人もいますが少数派です。国内SIerってやっぱり業務によっては全く英語力って必要ないですからね。ただ、最新の情報にアンテナをはったり、外資系や国外企業と働く際には絶対にあった方がいいです。必要な機会も年々増えてきています。 国内SIerは英語ができると英語要員として社内で認知されるようになったりできるので英語勉強しようかなっ方て無駄にはならないのでぜひ挑戦してください。国内SIerの方はTOEICがものを言…

  • (Express.js)HTTPSサーバ構築時にエラーが出た際の原因確認方法

    Express.jsアプリケーションをHTTPSサーバ化ではまった際に見直したい項目、確認方法について記載します。 普通に設定できていれば問題なく繋がるはずです。エラーが出ていた場合は何かしら設定ミスがあるはずなので一つ一つ確認していきましょう。ポート・サービスの確認サーバ側でポート、サービスを開放していないとブラウザから接続エラーが表示されます。 CentOS7の場合は、firewalldで設定します。 //ポートの確認 sudo firewall-cmd --list-ports --zone=public //サービスの確認 sudo firewall-cmd --list-servic…

  • Express.js(Node.js)をhttpsサーバで運用する

    httpサーバで構築していたNode.jsアプリケーションをhttpsに切り替える手順です。 ハマった際のポイントも書きたいと思います。HTTPSサーバ構築手順1. 独自ドメインを取得(有料) 2. サーバ証明書を作成(無料もあり) 3. Node.jsアプリケーションを修正1. 独自ドメインを取得お名前.com等で独自ドメインを取得します。サーバ証明書を発行する際に必要ですので事前に取得しておきます。自分で運用するだけであれば「.com」の部分は好きに選んで問題ありません。私は今回は「.xyz」にしました。 ただ、初年度1円とかでも2年目3000円とかのドメインもあるので、購入する前に2年契…

  • Puppeteer使い方(入門編)

    個人的によく使っているPuppeteer(伸ばさずにパペティアって読むぽい)の紹介記事です。 Webスクレイピングでブラウザの自動遷移とかができます。使えるシーン公式サイトやWeb情報を見ると自動テストで使用するのが多いみたいです。 私はテストではなくWebスクレイピングで使用しています。使えるシーンは限られますが、毎日Webアプリで同じようなことをしている時は自動化できます。実際に作ったわけではないですが、以下のような条件で使えると思います。 シーンは限られますが、毎日の定常作業がなくなるので実装できるとめちゃくちゃ楽です。例: 毎日ネット証券会社で同じ条件で株を買う 毎日同じサイトから新規…

  • 技術書をKindleで買う際に注意したいこと

    技術書を買う際にいつも迷うので基準をまとめてみました。 使用している端末はKindle Paperwhite、電子書籍リーダー(第7世代)、Wi-Fi 、4GB、ホワイトです。読みやすさ一番大事なのは読みやすさだと思います。普通のビジネス書であれば本でもKindleでも大差ありませんが、コードが入ってくると読みやすさが全然違います。正直Kindle版のコードはめちゃくちゃ読みづらいです。端末によっても違うと思うので極力サンプルを読んでみてください。 ただ、慣れると少し読みづらいけれど読めるようになってきますので無料サンプルを読んで行けるかなって人はKindleもありかもしれません。また、検索性…

  • Node.js(Express.js)でhttpヘッダセキュリティを設定する(use helmet)

    Express.jsで推奨されているhelmetを設定します。Express.js公式サイト Security Best PracticeHelmetはhttpヘッダの設定をサポートしてくれるライブラリでWebの脆弱性対策に使えます。 設定も簡単なので早めに設定してしまいましょう。GitHub(Helmet)デフォルトのhelmet設定手順npmからhelmetをインストール npm install helmet --saveapp.jsで定義。use helmetは早めに書いておきます。 const helmet = require('helmet') ~~~ app.use(helmet(…

  • 仮想通貨の本「これからを稼ごう 仮想通貨と未来のお金の話」 

    これからを稼ごう 仮想通貨と未来のお金の話作者: 堀江貴文出版社/メーカー: 徳間書店発売日: 2018/06/30メディア: Kindle版この商品を含むブログを見る 作者はホリエモンです。また監修は大石哲之さん。ホリエモンの仮想通貨やお金、社会に対するスタンスや見方を広く学べる本です。初心者でもわかりやすいですが、どちらかというとある程度知っている人がホリエモンの見方を学ぶという方がいいかなと思います。 先に入門書を読んでいた方が理解が深まります。また、後半仮想通貨から離れるので、「お金2.0」とか読んでるとよりわかりやすいかな。ホリエモンは仮想通貨をトレードをしているわけではないみたいで…

  • Node.jsの各種バージョンを最新化する

    macOSやLinux上でNode.jsのバージョン確認を行う方法です。Node.jsのバージョンアップデートNode.jsのバージョン確認 node -v v10.13.0Node.jsのバージョンはnodejsのGithub(リリーススケジュール)から確認できます。2019年1月現在は10.XがActive LTS(最新版)です。 End-of-lifeが過ぎたものは使用しないようにしましょう。 11.xがcurrent releaseなのでもう少ししたら11.xが主流になりますね。10.xをクリックすると現在は10.15.0が最新のマイナーバージョンとわかります。 こちらも適宜あげておき…

  • ふるさと納税やったらワンストップ特例申請の申告特例申請書が来なかったんですが

    サラリーマンならふるさと納税にチャレンジしてみましょうこんにちは。あなたはふるさと納税をやっていますか。私は数年前から毎年ふるさと納税をやっています。やってみると意外に簡単ですし、やり方を間違えないと絶対に損はしないのでおすすめです。 毎年同じ自治体に決めておけば手間も減りますよ。ちなみに楽天スーパーセールと絡めたりするとポイントもついてお得だったりもします。私の周りでは既婚者世帯はやっている印象ですね。単身者だと特産品とかにはあまり惹かれないかもしれませんね。ワンストップ特例申請をすれば原則確定申告は不要ですあなたが確定申告が不要なサラリーマンであれば、ワンストップ特例申請をすることで確定申…

  • Express.jsでエラーメッセージを隠す方法

    今日連休が終わりました。正月太ってしまったのでダイエットも今年の目標に追加ですね。 もちろん一番の目標はJavaScriptのスキルアップです!Express.jsでエラーメッセージを隠す方法Express.jsのエラーメッセージ参考にしたのはExpress.js公式ページです。Webアプリケーションを公開する際に不要なエラーメッセージを出力すると攻撃者に情報を与えてしまうため、セキュリティ上望ましくありません。なのでエラーメッセージを隠します。基本的にはExpress.jsの機能でエラーハンドリングはできます。Express.jsの404エラーでこんな感じです。 Not Found 404 …

  • Passportを使用してログイン認証(Node.js)

    Node.jsアプリケーションをWebサーバ化させるためにログイン画面を実装することにしました。個人用Webサーバであればログイン画面は不要なのですが、不要な情報を不特定多数に晒さないことがセキュリティにつながるため実装します。Passportっていうライブラリを使うことで簡単にログイン画面が実装できます。WebサーバはExpress.jsを使用して構築しています。Passportの公式サイトPassportの使用方法インストールまずはnpm経由でインストールします。passportではstrategy項目を定義する必要があるので、passport-localもinstallしておきます。セッ…

  • Kindleを買ったらKindleカバーも買う必要があるか(体験談)

    明けましておめでとうございます。 2019年の目標は立てましたか。今年も暗号資産やAIやWeb技術に面白い一年になるといいですね。 今日はKindleカバーに関する記事です。 kindleの買い方は色々あるので他のネット情報を参照してほしいですが、カバーに関する記事はほぼなかったので書いてみます。ちなみに、「Amazonプライム」加入で4000円引きで買うのが主流かと思いますが、「Amazonプライム」加入していないときは、加入している人にプレゼントしてもらうという方法もあるみたいです。 (私は「Amazonプライム」に加入して1年で辞めました!)Kindleカバーって必要かみなさんはKind…

  • これだけは覚えておきたい最低限のviエディタのコマンド

    Linuxでよく使うviエディタのコマンドのメモです。普段Linux触れていない人がいたら参考にしていただけるといいかなと。簡単に覚えられるように最低限のコマンドのみ紹介します。サーバの設定変更やWindowsからLinuxのサーバにFTPとかでアップロードした後にサーバ側でファイル編集したいときに役に立ちます。 アプリケーションのソースコード等をサーバで編集した後はマスタ管理等はしっかりやりましょう。ほんとはもっといっぱいありますが、慣れていない人もこれだけ覚えておけばほぼ困らないかと。viエディタのコマンドvi起動 vi xxxx(ファイル名)読み取りモードでvi起動 view xxxx(…