投稿一覧

自動売買方法

はじめに TradingViewはトレードする場合かなり便利です。 様々なチャートとインジケータをweb上で閲覧可能。 Oandaと接続して、裁量トレードはできる。 ここまでは良いのですが、TradingViewだけで 自動売買 が現在未対応らしい。 残念すぎるだろ… あきらめない 自動売買の選択肢で有力なのが、MT4・MT5を使用する方法です。 ですが、これには問題があり、基本的にはWindowsでこれらのソフトを稼働させ続ける環境を用意する必要があります。 Windows稼働の環境作りも面倒で、もっさりした環境でMT4・MT5を使いたくないですよね… そこで、TradingViewを使ってFXをする方法を調査しました。 PineScript(TradingViewで使用されるインジケータ作成用の言語)でAlert発火 ↓ WebHookでGASにAlertのメッセージを飛ばす ↓ GASでメッセージを解析してOandaのAPIで取引を実行する トレード用のAPI トレード用に使用できるAPIの選択肢は少なく、有力なのはOandaです。 ただ、これも問題がありOandaのGold会員である必要があります。 Gold会員の維持は毎月$50万のトレードを行っている必要があり、比較的ハードルが高いです。 最後に 日本国内では、未だにMT4が主流のようで、なかなか自動売買が楽にできる選択肢が増えないのが現状のようです。 TradingViewに頑張ってもらって、無料でTradingViewから自動売買ができるようになれば最高ですよね? 近いうちにその日が来ることを望んでいます。...

BinaryOptionテストテンプレート

はじめに バイオプと通常のFXとは全く異なるため、通常TradingViewではバイオプロジックの検証ができません。 ですが、指定した期間で強制決済した結果を集計することで、バイオプとしてのロジックを検証することができます。 今回は、テンプレートを見つけましたので確認していきます。 https://jp.tradingview.com/script/pvnR5RYJ-Binary-Options-Strategy-Template/ 解説 以下は終値が単純移動平均より上ならBUY、下ならSELLという単純なロジックだけでバイオプをした場合の検証です。 これを実際のロジックに置き換えて作る必要があります。 その前提で、このスクリプトを見ていきましょう。 //@version=4 strategy("Binary Options Strategy Template", overlay=true) // In this code we track the bar where a position was opened and close the position // aftera specified number of bars. The objective of this script is testing long/short signals // for knowing the amount of times it would turn a profit or not. // User input for amount of bars till close barsTillClose = input(5, minval=2, title="Amount of Bars Till Close Position") // SIMPLE ENTRY LOGIC (insert long/short signal here) sma = sma(close, 14) strategy....

BinaryOption用インジケーター

はじめに TradingViewでBinaryOption用のインジケーターを研究中です。 今回は以下のインジケーターを見てみます。 https://jp.tradingview.com/script/s48QJlfi-Vdub-Binary-Options-SniperVX-v1/ PineScript //@version=4 study("Vdub Binary Options SniperVX v1", overlay=true, shorttitle="Vdub_SniperBX_v1") // //====================channel====================== len = input(8, minval=1) src = input(close, title="Source") out = sma(src, len) last8h = highest(close, 13) lastl8 = lowest(close, 13) bearish = cross(close,out) == 1 and close[1] > close bullish = cross(close,out) == 1 and close[1] < close channel2=input(false, title="Bar Channel On/Off") ul2=plot(channel2?last8h:last8h==nz(last8h[1])?last8h:na, color=color.black, linewidth=1, style=plot.style_linebr, title="Candle body resistance level top", offset=0) ll2=plot(channel2?lastl8:lastl8==nz(lastl8[1])?lastl8:na, color=color.black, linewidth=1, style=plot....

ZigZag解説

はじめに ZigZagのインジケーターを見つけたので、自分で作れるレベルまで理解を進めたいと思います。 PineScript //@version=3 study("ZigZag!",overlay=true) use_current_res=input(true,title="Use Current Resolution?") length = input(title="Length", type=integer, defval=10) phase = input(title="Phase", type=integer, defval=50) power = input(title="Power", type=integer, defval=2) line_widht = input(title="Line Width", type=integer, defval=1) do_col = input(true,title="color up and down moves?") //UseFixed = input(title="Use Fixed Timeframes?", type=bool, defval=false) htf = input(title="Higher Timeframe", defval="005", options=["M", "W", "3D", "D", "720", "360", "240", "180", "120", "060", "030", "015", "010", "005", "003", "001"]) o = security(tickerid, htf, open) h = security(tickerid, htf, high) l = security(tickerid, htf, low) c = security(tickerid, htf, close) src = use_current_res ?...

Seriesとは

はじめに PineScriptを使用する上で、最も重要なのがSeriesの理解です。 Seriesは若干クセがあるので、しっかりと理解する必要があります。 Pineスクリプトの型システム Pineスクリプトには以下の基本的な9つの型が存在します。 int float bool color string line label plot hline これらの型はいくつかの形式で存在します。 形式には5種類あります。 literal const input simple series 型と形式は合わせて参照されます。 例えばliteral bool型、input bool型…のようにコンパイラによって識別されます。 また、以下のような型も存在します。 array void na (not available) tuple type 形式 Literal Literalは固定された値を表すための特別な表記法です。 Literalは常に以下のどれかの型形式になります。 literal float (3.14, 6.02E-23, 3e8) literal int (42) literal bool (true, false) literal string (“A text literal”) literal color (#FF55C6) ビルトインのopen,high,low,…などはLiterarlではありません。 これらはserires formです。 Const Const形式の値は次の特徴があります。...

ボックス描画機能

はじめに PineScriptにボックス描画機能が追加されました。 この機能ではチャート上に長方形を簡単に書くことができます。 サンプルを踏まえて、PineScriptでの使い方を見ていきます。 サンプル //@version=4 study("Box Example", overlay=true) c_green = color.rgb(33, 150, 243, 80) ll = lowest(10) hh = highest(10) b1 = box(na) if barstate.islast b1 := box.new(bar_index[9], hh, bar_index, ll, bgcolor=c_green, border_style=line.style_dashed) box.delete(b1[1]) //@version=4 バージョン4のPineScriptを使用しています。 study("Box Example", overlay=true) Box Exampleという名前でインジケータを作成します。 overlay=trueでチャートを重ねて表示します。 c_green = color.rgb(33, 150, 243, 80) color.rgb(red, green, blue, transp)の文法で色を定義します。 各色は0~255,transpは0(不透明)~100(不可視)です。 ll = lowest(10) lowestは指定された過去バーの範囲での最安値を意味します。 この場合は過去10本のバーの中での最安値のことです。 hh = highest(10) lowestと逆で過去10本のバーの中で最高値を意味します。 b1 = box(na) ifが別のスコープを作成するので、再代入する元になるb1変数を先に空で定義しておきます。 if barstate.islast barstate....

PineScript入門

はじめに PineScriptはトレードのインジケータを作成するための言語です。 独自の言語なので少し癖があります。 この記事では、 Quickstart guide で紹介されているインジケータを解説します。 対象のインジケータのコード //@version=4 study("MACD") fast = 12, slow = 26 fastMA = ema(close, fast) slowMA = ema(close, slow) macd = fastMA - slowMA signal = sma(macd, 9) plot(macd, color=color.blue) plot(signal, color=color.orange) Line 1: //@version=4 この行はコンパイラにスクリプトのバージョンを伝えるコメントです。 Line 2: study("MACD") MACDというチャートの名前を定義しています。 studyはインジケータ、strategyがEAを意味します。 Line 3: fast = 12, slow = 26 2つの変数を定義しています。 Line 4: fastMA = ema(close, fast) EMA(Exponential Moving Average)を計算した結果をfastMAに代入します。 ema はビルトイン関数です。 closeのシリーズを元に計算し、期間はfast(12)です。 Line 5: slowMA = ema(close, slow)...