18
SocialFX for iPhone @tanapro このこん提出用 1

SocialFX for iPhone

Embed Size (px)

Citation preview

Page 1: SocialFX for iPhone

SocialFX for iPhone

@tanaproこのこん提出用

1

Page 2: SocialFX for iPhone

自己紹介

• @tanapro

• SocialFX総裁

• かりすまiPhoneデベロッパー(笑)歴約5年

• 社会人1年目 (Webエンジニア)

2

Page 3: SocialFX for iPhone

SocialFXとは

• http://socialfx.jp.net/

• 私@tanaproのお金と口座を使ってみんなでFX取引を行う、世界初のユーザー参加型FX取引プラットフォーム。

• Web版は2013年11月に公開

3

Page 4: SocialFX for iPhone

SocialFXの遊び方

• 以下のパラメータを決めて投票を行う

• ポジション:売り or 買い

• ロット:何万通貨取引するか

• 指値幅:利益を確定させるまでの相場の変動幅

• 逆指値幅: 損失を確定させるまでの相場の変動幅

4

Page 5: SocialFX for iPhone

続き

• 投票者の中からランダムで1つ選び、証券会社に注文を発注する(自動)

• 予想したポジション通りに相場が動いて利益が確定すれば、自分のレーティングが上がる。(逆の場合は下がる)

5

Page 6: SocialFX for iPhone

今回作ったもの• SocialFXのiPhone用クライアントアプリ

• SocialFXサーバにiPhone用のAPIを新しく作成し、アプリからアクセスできるようにした。

• https://itunes.apple.com/jp/app/socialfx/id807095517?mt=8 2014/02/10公開

6

Page 7: SocialFX for iPhone

サービス全体像

②SocialFXサーバ

①SocialFX for iPhone③MetaTrader4サーバ

FX業者

投票情報取得 etc..

情報取得,更新

OCO注文発注プッシュリクエスト

プッシュ通知

情報取得

BaaS

7

Page 8: SocialFX for iPhone

① SocialFX for iPhone

• Objective-Cで実装 (iOS7対応)

• 機能

• 新規、決済約定時のプッシュ通知

• 投票

• 取引履歴、自分の戦績、チャート閲覧

8

Page 9: SocialFX for iPhone

スクリーンショット

チャート閲覧 投票 履歴 資産推移

9

Page 10: SocialFX for iPhone

StoryBoardを使用したモダンなiOS開発

10

Page 11: SocialFX for iPhone

② SocialFXサーバ

• ConoHaVPS 4G

• PlayFramework + Scala

• MySQL , Redis

11

Page 12: SocialFX for iPhone

SocialFXサーバ全体像

apache

play!

Redis MySQL

play!Port9998Port9999

リバースプロキシ

キャッシュサーバ DBサーバ

アプリケーションサーバ

HTTPサーバ

4GVPS上にplay!のインスタンスを2台起動させapacheでロードバランスさせることで負荷分散を行っている。

12

Page 13: SocialFX for iPhone

③ MetaTrader4サーバ• FXの自動売買を行うために必要なWindows専用アプリケーション(MetaTrader4)を稼働させているサーバ

• 専用の言語(MQL)を用いて、自由に売買プログラムを記述できる

• HTTP通信を行えるDLLを用いて、SocialFXサーバに接続している

• お名前.comデスクトップクラウド for FX上で稼働中

13

Page 14: SocialFX for iPhone

MetaTrader4の様子

14

Page 15: SocialFX for iPhone

このこん提出にあたって

• テーマ「つなぐ」

• →従来一人でやるものだったFX取引を皆で行えるようにした。

• FXで皆と私、皆と皆をつなぐ。

15

Page 16: SocialFX for iPhone

それぞれのプラットフォーム上で最適な言語を使用

• SocialFX for iPhone → Objective-C

• OSSライブラリが豊富

• SocialFX → Scala

• 関数型言語Scalaで処理を簡潔に記述できる

• PlayFrameworkでモダンなWeb開発

• MetaTrader4 → MQL

• これに関してはMQLのみ16

Page 17: SocialFX for iPhone

アピール

• iPhone + FX + プログラムの知識 = SocialFX

• 既存のシステムを組み合わせるだけで世界はもっと面白くなる。

17

Page 18: SocialFX for iPhone

今後の課題

• 現在Parseに依存しているプッシュ通知システムを自前で実装

• ユーザが増えた時のための負荷対策

18