かーぶ(仮)

主に日本株やってます。長期ではなく短期取引メインです。TradeStation等株取引ツールも紹介します。

kabuステーションを使った先物取引

kabu station

皆さんご存知auカブドットコム証券が提供しているAPI
先物取引を個人が無料で行うなら辿り着く場所。

気づき事項などはtwitterで上げたりしてたけど、毎回追いかけるのが面倒なのでここをメモ代わりとして使用。

使用条件

無料とは言え条件があります。
使用にはfintechプランに入る必要があるのですが、無料で対応させる場合はざっくりいうと以下の2つ。
条件外れて取引してしまったことはないけど、おそらく使用料の1000円がかかってくるはず。

条件
自分

毎月一回の取引はズボラ人間からするとかなーり面倒ではあるけど、低価格の銘柄を瞬間で触ればほぼ費用はかからないはず。
自分の場合、人気銘柄の低価格銘柄を触るようにしています。(ただし、楽しくなって損が多くなる(´;д;`))
無料条件で使用させてくれてauカブドットコムさんには感謝。

取引内容

pybotterを用いたひげとりbot

寄り道

MLとの接続を作ったりしないといけないんだけど、とりあえずbotっぽいものを作りたかった。

全ては流用

Pybotterの使い方を学ぶために、以下で紹介されているひげとりbotを流用して作成。 (ありがとうございます)

note.com

開示に際して

恥ずかしいコメントは削除するけど、勉強用のprint文はそのままで汚くてすいません。 colabで使う際は適当に分けて貼り付けてください。

GoogleColabでのコード byテストネット環境

!pip install pybotters

# 重要!
# colabでasyncioを使うときに以下2行を実行。
import nest_asyncio
nest_asyncio.apply()

import asyncio
import pybotters

BYBIT_API_KEY = "---"
BYBIT_API_SECRET = "---"

# apis
apis = {
    'bybit_testnet': [BYBIT_API_KEY, BYBIT_API_SECRET]
}

#importとか
import time
import pandas as pd
import numpy as np
import random
import requests
import datetime

#Main loop

async def main():
    async with pybotters.Client(apis=apis, base_url='https://api-testnet.bybit.com') as client:
       
        TICKER = 'BTCUSD'
        LOT = 10
        MIN_LOT = 1
        TICK = 0.5
        MARGIN = 0.0025

        cond = True

        # メインループ
        while True:
          # REST APIデータ並列リクエスト
          resps = await asyncio.gather(
              client.get('/v2/public/kline/list', params={
                  'symbol': TICKER, 'interval': 1, 'from': int(time.time()) - 3600
                  }),
              client.get("/v2/public/tickers",params={"symbol": TICKER}),
              client.get('/v2/private/order', params={'symbol': TICKER}),
              client.get('/v2/private/position/list', params={'symbol': TICKER}),
              client.get("/v2/private/wallet/balance",params={"coin": 'BTC'}),
          )
            
          kline,tickers, order, position,balance = await asyncio.gather(*[r.json() for r in resps])
          
          print(datetime.datetime.now())
          print("<<kline>>",kline)
          print("<<tickers>>",tickers)
          print("<<order>>",order)
          print("<<position>>",position)
          print("<<balance>>",balance)

          
          # デリバティブの保有資産
          # 現在のポジションを取得する。WR追加
          BTC_posi = balance['result']["BTC"]['equity']
          print("BTC_posi  :",BTC_posi)

          # 現在の注文状況を取得する。


          # 古いオーダーをキャンセル
          if True:
              await client.post('/v2/private/order/cancelAll', data={
                  'symbol': 'BTCUSD'
              })
              print("注文ALLキャンセル 動作確認完了")

          best_bid = float(tickers["result"][0]['bid_price'])
          best_ask = float(tickers["result"][0]['ask_price'])
          
          fair_mid = ((best_ask+best_bid)/2)
        
          print("【使用する値】")
          print("bid_price  ",tickers["result"][0]['bid_price'])
          print("ask_price  ",tickers["result"][0]['ask_price'])

          
          # ポジションをすべて取得
          posi=float(position["result"]["size"])
          print("ポジション: ",posi)

          # 新規買い
          try: 
            side_temp = "Buy"
            qty_temp = LOT - posi if posi>0 else LOT
            price_temp = int(min(fair_mid * (1-MARGIN), best_ask-TICK*5))
        
            new_buy=await client.post('/v2/private/order/create', data={
                'symbol': TICKER,  #'BTCUSD',
                'side': side_temp,
                'order_type': 'Limit',#market:成り行き、limit:指値
                'qty': qty_temp,
                'price': price_temp,
                'time_in_force': "PostOnly",   # 'GoodTillCancel',
            })
            print("買い注文", side_temp ,"  ", qty_temp,"  ", price_temp)
            print(await new_buy.json())
          except Exception as e: print(e); pass    

          # 新規売り
          try:
            side_temp = "Sell"
            qty_temp = LOT - posi if posi>0 else LOT
            price_temp = int(max(fair_mid * (1+MARGIN), best_bid+TICK*5))

            new_sell = await client.post('/v2/private/order/create', data={
                'symbol': TICKER,  #'BTCUSD',
                'side': side_temp,
                'order_type': 'Limit',#market:成り行き、limit:指値
                'qty': qty_temp,
                'price': price_temp,
                'time_in_force': "PostOnly",   # 'GoodTillCancel',
            })
            print("売り注文", side_temp ,"  ", qty_temp,"  ", price_temp)
            print(await new_sell.json())
          except Exception as e: print(e); pass   

          # アンワインド 反対売買を行う。min_LOTより大きい場合はポジションと逆方向に注文をだす。
          if abs(posi)>MIN_LOT:
              try:
                side_temp = 'Sell' if posi>0 else 'Buy'
                qty_temp = int(abs(posi))
                price_temp = int(max(fair_mid, best_bid+TICK) if posi>0 else min(fair_mid, best_ask-TICK))
                

                unwind = await client.post('/v2/private/order/create', data={
                    'symbol': TICKER,  #'BTCUSD',
                    'side': side_temp,
                    'order_type': 'Limit',#Market:成り行き、limit:指値
                    'qty': qty_temp,
                    'price': price_temp,
                    'time_in_force': 'GoodTillCancel'#"PostOnly",   # 
                })
                print("アンワイド注文", side_temp ,"  ", qty_temp,"  ", price_temp)
                print(await unwind.json())
              except Exception as e: print(e); pass    
          
          # 待機(10秒) 
          await asyncio.sleep(10)


# 非同期メイン関数を実行
if __name__ == '__main__':
    try:
        asyncio.run(main())
    except KeyboardInterrupt:
        pass

仮想通貨botterへの道。

f:id:kabuist:20211205204125p:plain

2021年12月4日 仮想通貨暴落

上記翌日、これまで動いていなかったbotterをめざすべく動き出します。暴落した翌日に始めるのもどうかと思いますが、ひとつのきっかけとしてよいのかと。

いつも、寄り道して途中で挫折する(諦めてしまう)ので、事前におおまかな道を描いて、勧めたいとおもう。

 

基本的には、以下方針。

  • 使う言語はpython(これしかしらん)
  • 機械学習は基本的にgoogle colabを使用。(myPCはスペック劣る)
  • 精度よりも継続・スピード!

皆さん有料級の情報共有ばかり。ありがたくシッカリいただきます。

ちなみに使う口座はbybit。

【有名所】Bybit (バイビット) |暗号資産取引所

 

 

1 まずは以下チュートリアルとされるリンクから流れを掴む。

qiita.com

  • 価格データ引っ張ってくる。
  • 機械学習で学習。
  • バックテスト結果。

 たくさんの指標突っ込んで、簡単にやっている(様に見える)チュートリアルなのにバックテストが恐ろしくきれいな結果。

 何か裏があると見ています(失礼)が、まずはすすめることを大事に。

 colabで実行するにあたっての追加コードは以下。

---

!pip install ccxt
!pip install crypto_data_fetcher
!pip install cached_property
!curl -L http://prdownloads.sourceforge.net/ta-lib/ta-lib-0.4.0-src.tar.gz -O && tar xzvf ta-lib-0.4.0-src.tar.gz
!cd ta-lib && ./configure --prefix=/usr && make && make install && cd -
!pip install ta-lib
!pip install "git+https://github.com/richmanbtc/crypto_data_fetcher.git@v0.0.15#egg=crypto_data_fetcher"
!pip install japanize-matplotlib
import japanize_matplotlib
sns.set(font="IPAGothic")

---

2 bybitのデモトレード環境(テストネット)に登録

2.1 登録

本口座も持っているけど、まずはテスト環境でと。
登録を完了!2021/12/11

crypto-worldwide.xyz

参考サイトではサポートに連絡して入金してもらうみたいな手順があったけど

ログイン時からすでに約2.5btc所有していました。

f:id:kabuist:20211211124556p:plain

 

 

2.2 bybitのAPIを取得

f:id:kabuist:20211211122514p:plain

 APIの取得をしようとすると、google認証が必要とのことで、アプリと連携。

 スマホの標準カメラからQR読むとテキストしか出てこなくて少し戸惑い。(;´Д`)

 google認証のアプリでQRコードを読む必要があるのね。

 

 

f:id:kabuist:20211211123216p:plain

APIキーのIPアクセスとか制限できるのね。

colab上でやろうとすると固定じゃ無理なんだろうか?

大金運用するならサーバ建てないとだねー。

 

取得完了!

f:id:kabuist:20211211123537p:plain

 

3 bybitからデータ取得する。

 王道ccxtを利用してからのpybotterへの流れを体験。

 パブリックとプライベート(API要)は今後取引を考えているので、プライベートを中心に学ぶ。

3.1 ccxt

 カナヲさんのページであったのでお試し。

Bybit入門API編 ※2021年6月25日更新|カナヲ定量分析|note

 

 しかし、API_keyが違うと蹴られてる?

f:id:kabuist:20211211130250p:plain

 

 調べた感じだと、ccxtはbybitのtestnet環境は対応していないようで、本番環境で同じ様にAPIを取得すると、繋がりました。

前述の通り、とりあえずの接続確認だったし、本番環境でテストする勇気はないので、「はい、そうですか」と諦め。pybotterに移行しました。

3.2 pybotter

pybotterを使います。

note.com

 

1)インストール

”!pip install pybotters”

2) colabで使うために詰まった点を下記。

wikiに記載されている”低頻度bot”のサンプルをコピぺ。

github.com

ア ”asyncio.run() cannot be called from a running event loop”のエラー。

非同期とかも理解できていない状態でしたが、以下のようにioの待機時間にcpu回して早く実行しましょうということらしい。下図で赤色がcpu、紫がio待機?。

f:id:kabuist:20211212160451p:plain

解決策は以下を ”import asyncio”の前に記述。

import nest_asyncio
nest_asyncio.apply()

 

3)編集

 1分も待てないので、以下を5秒に短縮

            # 待機(60秒) 
            await asyncio.sleep(60)

 (60)を(5)に変更。

   加えて、実行された時に何かを表示したいので、以下を while文のどこかに貼り付け。

  ”print("resps :",resps)”

 テストネットへの接続が必要なので、以下2つを編集。

・base_URL を~api-testnet~に変更。

f:id:kabuist:20211212234221p:plain

apiの接続先を”bybit_testnet”に変更

f:id:kabuist:20211212234322p:plain

 

4)実行

 実行すると、5秒毎に表示が出てくる。(はず)

f:id:kabuist:20211212163427p:plain

 

 

5)内容の理解

 表示された内容を理解して、自分がほしい他のパラメータで表示させてみる。

  以下の記述で要求している様子。(赤文字部が自分で追加したところ)

 ちなみにbybitの公式API説明はここ。Bybit API Docs

 リンク先は queryKline 価格データの取得要領が掲載されている。

         # メインループ

        while True:
            # REST APIデータ並列リクエス
            resps = await asyncio.gather(
                client.get('/v2/public/kline/list', params={
                    'symbol''BTCUSD''interval'1'from'int(time.time()) - 3600
                }),
                client.get('/v2/private/order', params={'symbol''BTCUSD'}),
                client.get('/v2/private/position/list', params={'symbol''BTCUSD'}),
                client.get("/v2/private/wallet/balance",params={"coin": 'BTCUSD'}),
            )
            kline, order, position,balance = await asyncio.gather(*[r.json() for r in resps])
                        
            print(datetime.datetime.now())
            print("resps :",resps)
            print("<<kline>>",kline)
            print("<<order>>",order)
            print("<<position>>",position)
            print("<<balance>>",balance)

 respsで要求する内容を記述して、返答されてきたものを真ん中あたりの「kline, order・・・」のところで各変数に代入。

 赤文字が追加したところで、代入して取得した内容をprint文で記述。

ア kline

 価格の時系列データのようで、1分毎のBTCUSDの価格情報(1時間前(3600秒)から取得)しているっぽい。

f:id:kabuist:20211212232549p:plain

イ order

 注文状況

ウ position

 現在のポジション

オ balance

 今回追加。現在の資産

 

<エラー中>

 当初イ、ウ、エはprivate情報っぽくてエラーが返ってきていた。

'ret_msg': 'empty param of timestamp'

タイムスタンプのパラメータが空?

 これはapiへ要求する際のBASE_URLを直してなかったことが原因でした。

f:id:kabuist:20211212232706p:plain

<修正後>balanceが正しく取れてなさそう。本来なら60000の数字が返ってくるはず。。>>できました。現物ではなく、デリバティブ側に振替すれば確認できた。ポジションはインバース無期限での確認。どこかで指定ができそうだけども。とりあえずok。

f:id:kabuist:20211212234000p:plain

<できたやつ>

f:id:kabuist:20211215000125p:plain

 

<寄り道>

kabuist.hatenablog.com

 

4 機械学習のモデルとbybitの注文をつなぐ。

さて、実際の注文につなげる必要があるが、構想

モデルから抽出条件に合致するタイミングで発注処理。

4.1 注文

 

 

5 テスト運用

 

 

決算書のすすめ1~決算情報を利用する

決算書に挑戦

とうとう決算書に手を付けることになりました。
いままでテクニカル+雰囲気で挑戦してきましたがテーマ+意味のある上昇を掴まないと大きく取れないと決心(`・ω・´)
きっかけはいつもどおりtwitterから。

なにをするの?

かと言って鬼神(奇人?)井村さんみたいにすべての銘柄の決算を見るとか到底不可能。続かない。
自分は自分のやり方ということでシステム化である程度さばきたい。
巷では決算書をAPIで取得する方法があるので、良いものだけを見れるようにしたい。

まずは理解

今回は、
まずは情報取得の方法を理解ということで、取得方法を確認します。
ぶらりして集めた情報なので間違ってたらスマン  基本的にはスピードを重視したいですが、ほぼ差分がないのであれば株探とかでまとめられた表とかスクレイピングできたらいいなー。情報あれば教えて下さい

EDINET

公式HP

www.fsa.go.jp

Tdnet

  • 正式名称:TDnet(Timely Disclosure network:適時開示情報伝達システム)
  • 日本取引所が発行元
  • APIが提供されており、リクエストを送ることにより過去5年間の適時開示情報を直接取得することが可能。
  • ただし、有料のTDnetサーバ型サービスの方が、情報を早く取得できる。
  • 無料と思っていたら有料だった。。。月7万。APIを作っている方もいるそうな。
  • 取得できる情報
    • 決算短信系情報(サマリPDF、全文PDF、XBRL
    • 業績予想の修正、配当予想等(全文PDF、XBRL
    • 株式・新株予約権の発行、自己株式の取得、PR情報等の上記以外の情報(全文PDF)

      公式HP

      www.jpx.co.jp

有報キャッチャー

  • DINETやTDnetで開示されたIR情報をご提供するサービス
  • 提供元:プレシス https://www.precis.co.jp/
  • 配信サービスとして「Atom形式のAPI」が提供されていたが、継続困難とのことで終了済み。(2020/7頃終了)。。
  • スクレイピングで取得とか?robots.txt的には問題なし(20210904時点)

公式HP

ufocatch.com

バフェットコードAPI

  • バフェットコードからの情報
  • 提供元:バフェットコード
  • 有料で月1万のプレミアム会員になる必要あり。
  • 文書発行から提供までの時間

    公式HP

https://www.buffett-code.com/

さて、どうしようか。

他が提供しているサービスとかだと有報キャッチャーみたいに提供終了ショック( ゚д゚)があるよね。
EDINET は、じっくり分析にはよいけど投資タイミングとしては遅いと思うので、Tdnet。
とりあえずQITAを漁って作業を開始。

ウェブ上の表の一列のみテキスト抽出する

tips

自分はエクセルやスプレッドシートを、複数の銘柄情報を見るのに使用しています。
f:id:kabuist:20210222154449p:plain

よく銘柄一覧が表形式で掲載されていますが、コードだけコピーするのは結構面倒だったりします。
以下のjavascriptをお気に入りに追加すれば、コードのみ表示させることができ、コピペするのに便利です。
元ネタのサイトがわかりませんが、作ってくれた方ありがとうございます。m( )m

方法

chromeであれば「ブックマークマネージャ」を開いて以下のコード部分をURL部に貼り付け。

f:id:kabuist:20210222154115p:plain

WEB上の表から

欲しい列の一部を選択状態とする。例の図だと「コード」の部分
先程追加したお気に入りボタンを押す。 f:id:kabuist:20210222153105p:plain

表示

別画面で以下のテキストが表示されるので、コピーして色々活用 f:id:kabuist:20210222153240p:plain

コード

javascript:(function(){!function(d,f,s){s=d.createElement("script");s.src="//j.mp/1bPoAXq";s.onload=function(){f(jQuery.noConflict(1))};d.body.appendChild(s)}(document,function($){var r = "";var s=document.getSelection();if (!s) {alert("Please select strings.");return;}var c=-1;c=$(s.focusNode).closest("td").index();if (c<0) {c=$(s.focusNode).closest("th").index();}if (c<0) {alert("Please select strings in some table.");return;}var o=$(s.focusNode.parentNode).closest("table");o.find("tr").each(function () {var t = $(this).find("td:eq("+c+")").text().trim();if (t=='') {t = $(this).find("th:eq("+c+")").text().trim();}r+=t+"<br/>";});if (r=="") {return;}var w=window.open("");var d=w.document.open();d.write(r);d.close();});})();

勉学 20か条

拾い物

ネットで「ハーバード大学」の図書館にはられていたという20か条。
実際は違うらしいけど、頑張りたい人へのメッセージとしては良いと感じたので。

自分を鼓舞させるためにメモ

1. 今居眠りすれば、あなたは夢をみる。今学習すれば、あなたは夢が叶う。

“Sleep now and a dream will come out; Study now and a dream will come true.”

2. あなたが無駄にした今日はどれだけの人が願っても叶わなかった未来である。

“Today you wasted is tomorrow loser wanted.”

3. 物事に取りかかるべき一番早い時は、あなたが「遅かった」と感じた瞬間である。

“The earliest moment is when you think it’s too late.”

4. 今日やるほうが、明日やるよりも何倍も良い。

“Better do it today than tomorrow.”

5. 勉強に励む苦しさは今だけであり、勉強しなかった苦しさは一生続く。

“The pain of study is temporary; the pain of not study is lifelong.”

6. 勉強するのに足りないのは時間ではない。努力だ。

“You never lack time to study; you just lack the efforts.”

7. 幸福には順位はないが、成功には順位がある。

“There might not be a ranking of happiness but there is surely a ranking of success.”

8. 学習は人生の全てではないが、人生の一部として続くものである。

“Studying is just one little part of your life; loosing it leads to loosing the whole life.”

9. 苦しみが避けられないのであれば、むしろそれを楽しめ。

“Enjoy the pain if it’s inevitable.”

10. 人より早く起き、人より努力して、初めて成功の味を真に噛みしめる事ができる。

“Waking up earlier and working out harder is the way to success.”

11. 怠惰な人が成功する事は決してない、真に成功を収める者は徹底した自己管理と忍耐力を備えた者である。

“Nobody succeeds easily without complete self-control and strong perseverance.”

12. 時間は、一瞬で過ぎていく。

“Time passes by.”

13. 今のよだれ(渇望)は将来の涙となる。

“Today’s slaver will drain into tomorrow’s tear.”

14. 犬の様に学び、紳士の様に遊べ。

“Study like a Dog; Play like a gentleman.”

15. 今日歩くのを止めれば、明日からは走るしかない。

“Stop walking today and you’ll have to run tomorrow.”

16. 一番現実的な人は、自分の未来に投資する。

“A true realist is one who invests in future.

17. 教育の優劣が収入の優劣 。

“Education equals to income.

18. 過ぎ去った今日は二度と帰ってこない。

“Today never comes back.”

19. 今この瞬間も相手は読書をして力を身につけている。

“Even at this very moment your competitors keep reading.”

20. 努力無しに結果無し。

“No pain, No gain.”

Kaggleでの翻訳方法

Kaggleでの翻訳

御存知の通り、kaggleではカーネル内が日本語翻訳されない。 そのため、Chromeを使って翻訳
Chrome F12を押して実行
2段階に分けて実行が必要。 なんとかmonkeyを使えばいいらしいけど、良く分からず。。

1回目処理

window.location.href = document.querySelector("#rendered-kernel-content").getAttribute("src")

2回目処理

// スクロールを可能にする。
document.querySelector("body").style.overflowY="visible"

// コードの中身はgoogle翻訳させないためにclassに.notranslateを追加
document.querySelectorAll(".input").forEach((element) => {
  element.classList.add("notranslate")
})

//コードの出力セルにも上記同様処理を追加
document.querySelectorAll(".output_wrapper").forEach((element) => {
  element.classList.add("notranslate")
})

Financial関数の一覧・例

テスト用のインジケータ作成

kabuist.hatenablog.com

こんばんわ。 上記で紹介したfinancial関数ですが、いつもと違う日本語訳で紹介されているので(書いたの自分ですが)値が合っているか確認したくて、値を確認するためのインジケータを作成しました。

financial関数の書き方の参考例 + 値・単位の確認用としてどなたかの役に立てば嬉しいです。

使い方

数が多い(financial関数は一つのコードにつき40までしか使えない)ので、複数に分けてます。 必要なものだけ使ってもらえばと思います。
ラベルの左から、日本名(機械翻訳)、financial関数のid、呼び出された最新のFY(本決算)数値。
本決算数値を株探等の値と合致させ確認してみてください。
呼び出しには少し時間がかかりますのでその点注意ください。
この日本語訳はないわ。これに修正するべきだ!があれば教えていただけると助かります

【1 損益計算書(Income Statements)】

サンプル画像

f:id:kabuist:20210109211258p:plain

コード
//@version=4
// finnancialデータを一覧で確認するスクリプト
// 1 損益計算書(Income Statements)

study("WR_FinancialDataList_to_IncomeStatements")

// 登録一覧
AFTER_TAX_OTHER_INCOME_FY=financial(syminfo.tickerid,"AFTER_TAX_OTHER_INCOME", "FY")
COST_OF_GOODS_FY=financial(syminfo.tickerid,"COST_OF_GOODS", "FY")
DILUTED_NET_INCOME_FY=financial(syminfo.tickerid,"DILUTED_NET_INCOME", "FY")
DILUTION_ADJUSTMENT_FY=financial(syminfo.tickerid,"DILUTION_ADJUSTMENT", "FY")
DISCONTINUED_OPERATIONS_FY=financial(syminfo.tickerid,"DISCONTINUED_OPERATIONS", "FY")
EARNINGS_PER_SHARE_BASIC_FY=financial(syminfo.tickerid,"EARNINGS_PER_SHARE_BASIC", "FY")
EARNINGS_PER_SHARE_FY=financial(syminfo.tickerid,"EARNINGS_PER_SHARE", "FY")
EBITDA_FY=financial(syminfo.tickerid,"EBITDA", "FY")
EQUITY_IN_EARNINGS_FY=financial(syminfo.tickerid,"EQUITY_IN_EARNINGS", "FY")
GROSS_PROFIT_FY=financial(syminfo.tickerid,"GROSS_PROFIT", "FY")
INCOME_TAX_FY=financial(syminfo.tickerid,"INCOME_TAX", "FY")
MINORITY_INTEREST_EXP_FY=financial(syminfo.tickerid,"MINORITY_INTEREST_EXP", "FY")
NET_INCOME_BEF_DISC_OPER_FY=financial(syminfo.tickerid,"NET_INCOME_BEF_DISC_OPER", "FY")
NET_INCOME_FY=financial(syminfo.tickerid,"NET_INCOME", "FY")
OPER_INCOME_FY=financial(syminfo.tickerid,"OPER_INCOME", "FY")
OPERATING_EXPENSES_FY=financial(syminfo.tickerid,"OPERATING_EXPENSES", "FY")
OTHER_OPER_EXPENSE_TOTAL_FY=financial(syminfo.tickerid,"OTHER_OPER_EXPENSE_TOTAL", "FY")
PRETAX_INCOME_FY=financial(syminfo.tickerid,"PRETAX_INCOME", "FY")
RESEARCH_AND_DEV_FY=financial(syminfo.tickerid,"RESEARCH_AND_DEV", "FY")
SELL_GEN_ADMIN_EXP_OTHER_FY=financial(syminfo.tickerid,"SELL_GEN_ADMIN_EXP_OTHER", "FY")
SELL_GEN_ADMIN_EXP_TOTAL_FY=financial(syminfo.tickerid,"SELL_GEN_ADMIN_EXP_TOTAL", "FY")
TOTAL_NON_OPER_INCOME_FY=financial(syminfo.tickerid,"TOTAL_NON_OPER_INCOME", "FY")
TOTAL_OPER_EXPENSE_FY=financial(syminfo.tickerid,"TOTAL_OPER_EXPENSE", "FY")
TOTAL_REVENUE_FY=financial(syminfo.tickerid,"TOTAL_REVENUE", "FY")



//最後の足で描写処理
if (barstate.islast)
    financial_data_value = array.new_string(0)
    financial_data_description = array.new_string(0)
    // -------------
    array.push(financial_data_description,"税引後 その他収支     AFTER_TAX_OTHER_INCOME")
    array.push(financial_data_description,"商品の原価     COST_OF_GOODS")
    array.push(financial_data_description,"潜在株式調整後1株当たり 当期純利益     DILUTED_NET_INCOME")
    array.push(financial_data_description,"希薄化調整     DILUTION_ADJUSTMENT")
    array.push(financial_data_description,"非継続事業     DISCONTINUED_OPERATIONS")
    array.push(financial_data_description,"基本EPS     EARNINGS_PER_SHARE_BASIC")
    array.push(financial_data_description,"潜在株式調整後1株当たり 当期純利益     EARNINGS_PER_SHARE")
    array.push(financial_data_description,"EBITDA     EBITDA")
    array.push(financial_data_description,"持分法による投資利益     EQUITY_IN_EARNINGS")
    array.push(financial_data_description,"売上総利益     GROSS_PROFIT")
    array.push(financial_data_description,"税金     INCOME_TAX")
    array.push(financial_data_description,"非支配/少数株主持分     MINORITY_INTEREST_EXP")
    array.push(financial_data_description,"非継続事業前の 当期純利益     NET_INCOME_BEF_DISC_OPER")
    array.push(financial_data_description,"当期純利益     NET_INCOME")
    array.push(financial_data_description,"営業利益     OPER_INCOME")
    array.push(financial_data_description,"営業費用(除くCOGS     OPERATING_EXPENSES")
    array.push(financial_data_description,"その他の営業費用合計     OTHER_OPER_EXPENSE_TOTAL")
    array.push(financial_data_description,"税引前利益     PRETAX_INCOME")
    array.push(financial_data_description,"研究開発     RESEARCH_AND_DEV")
    array.push(financial_data_description,"販売費・ 一般管理費 、その他     SELL_GEN_ADMIN_EXP_OTHER")
    array.push(financial_data_description,"販売費及び 一般管理費 、合計     SELL_GEN_ADMIN_EXP_TOTAL")
    array.push(financial_data_description,"営業外収益 合計     TOTAL_NON_OPER_INCOME")
    array.push(financial_data_description,"営業費用合計     TOTAL_OPER_EXPENSE")
    array.push(financial_data_description,"総収入     TOTAL_REVENUE")
    
    // -------------
    
    array.push(financial_data_value,tostring(AFTER_TAX_OTHER_INCOME_FY[0]))
    array.push(financial_data_value,tostring(COST_OF_GOODS_FY[0]))
    array.push(financial_data_value,tostring(DILUTED_NET_INCOME_FY[0]))
    array.push(financial_data_value,tostring(DILUTION_ADJUSTMENT_FY[0]))
    array.push(financial_data_value,tostring(DISCONTINUED_OPERATIONS_FY[0]))
    array.push(financial_data_value,tostring(EARNINGS_PER_SHARE_BASIC_FY[0]))
    array.push(financial_data_value,tostring(EARNINGS_PER_SHARE_FY[0]))
    array.push(financial_data_value,tostring(EBITDA_FY[0]))
    array.push(financial_data_value,tostring(EQUITY_IN_EARNINGS_FY[0]))
    array.push(financial_data_value,tostring(GROSS_PROFIT_FY[0]))
    array.push(financial_data_value,tostring(INCOME_TAX_FY[0]))
    array.push(financial_data_value,tostring(MINORITY_INTEREST_EXP_FY[0]))
    array.push(financial_data_value,tostring(NET_INCOME_BEF_DISC_OPER_FY[0]))
    array.push(financial_data_value,tostring(NET_INCOME_FY[0]))
    array.push(financial_data_value,tostring(OPER_INCOME_FY[0]))
    array.push(financial_data_value,tostring(OPERATING_EXPENSES_FY[0]))
    array.push(financial_data_value,tostring(OTHER_OPER_EXPENSE_TOTAL_FY[0]))
    array.push(financial_data_value,tostring(PRETAX_INCOME_FY[0]))
    array.push(financial_data_value,tostring(RESEARCH_AND_DEV_FY[0]))
    array.push(financial_data_value,tostring(SELL_GEN_ADMIN_EXP_OTHER_FY[0]))
    array.push(financial_data_value,tostring(SELL_GEN_ADMIN_EXP_TOTAL_FY[0]))
    array.push(financial_data_value,tostring(TOTAL_NON_OPER_INCOME_FY[0]))
    array.push(financial_data_value,tostring(TOTAL_OPER_EXPENSE_FY[0]))
    array.push(financial_data_value,tostring(TOTAL_REVENUE_FY[0]))
    
    
    var label_text = "【1 損益計算書(Income Statements)】\n"
    for i=0 to array.size(financial_data_value)-1
        label_text := label_text + array.get(financial_data_description,i)+"\t\t:\t\t"
        label_text := label_text + array.get(financial_data_value,i)+"\n"
    
    var label l = na
    l := label.new( bar_index, 0,
     yloc=yloc.price, style=label.style_label_right,
     color=color.green,textcolor=color.white,textalign=text.align_left,size=size.large,
     text=label_text )
         

【2 貸借対照表(1/2)(Balance Sheet)】

サンプル画像

f:id:kabuist:20210109211541p:plain

コード
//@version=4
// finnancialデータを一覧で確認するスクリプト
// 2 貸借対照表(1/2)(Balance Sheet)

study("WR_FinancialDataList_to_BalanceSheet_1")

// 登録一覧
ACCOUNTS_PAYABLE_FY=financial(syminfo.tickerid,"ACCOUNTS_PAYABLE", "FY")
ACCOUNTS_RECEIVABLES_NET_FY=financial(syminfo.tickerid,"ACCOUNTS_RECEIVABLES_NET", "FY")
ACCRUED_PAYROLL_FY=financial(syminfo.tickerid,"ACCRUED_PAYROLL", "FY")
ACCUM_DEPREC_TOTAL_FY=financial(syminfo.tickerid,"ACCUM_DEPREC_TOTAL", "FY")
BOOK_VALUE_PER_SHARE_FY=financial(syminfo.tickerid,"BOOK_VALUE_PER_SHARE", "FY")
CAPITAL_OPERATING_LEASE_OBLIGATIONS_FY=financial(syminfo.tickerid,"CAPITAL_OPERATING_LEASE_OBLIGATIONS", "FY")
CASH_N_EQUIVALENTS_FY=financial(syminfo.tickerid,"CASH_N_EQUIVALENTS", "FY")
CASH_N_SHORT_TERM_INVEST_FY=financial(syminfo.tickerid,"CASH_N_SHORT_TERM_INVEST", "FY")
COMMON_EQUITY_TOTAL_FY=financial(syminfo.tickerid,"COMMON_EQUITY_TOTAL", "FY")
CURRENT_PORT_DEBT_CAPITAL_LEASES_FY=financial(syminfo.tickerid,"CURRENT_PORT_DEBT_CAPITAL_LEASES", "FY")
DEFERRED_INCOME_CURRENT_FY=financial(syminfo.tickerid,"DEFERRED_INCOME_CURRENT", "FY")
DEFERRED_INCOME_NON_CURRENT_FY=financial(syminfo.tickerid,"DEFERRED_INCOME_NON_CURRENT", "FY")
DEFERRED_TAX_ASSESTS_FY=financial(syminfo.tickerid,"DEFERRED_TAX_ASSESTS", "FY")
DEFERRED_TAX_LIABILITIES_FY=financial(syminfo.tickerid,"DEFERRED_TAX_LIABILITIES", "FY")
DIVIDENDS_PAYABLE_FY=financial(syminfo.tickerid,"DIVIDENDS_PAYABLE", "FY")
GOODWILL_FY=financial(syminfo.tickerid,"GOODWILL", "FY")
INCOME_TAX_PAYABLE_FY=financial(syminfo.tickerid,"INCOME_TAX_PAYABLE", "FY")
INTANGIBLES_NET_FY=financial(syminfo.tickerid,"INTANGIBLES_NET", "FY")
INVENTORY_FINISHED_GOODS_FY=financial(syminfo.tickerid,"INVENTORY_FINISHED_GOODS", "FY")
INVENTORY_PROGRESS_PAYMENTS_FY=financial(syminfo.tickerid,"INVENTORY_PROGRESS_PAYMENTS", "FY")
INVENTORY_RAW_MATERIALS_FY=financial(syminfo.tickerid,"INVENTORY_RAW_MATERIALS", "FY")
INVENTORY_WORK_IN_PROGRESS_FY=financial(syminfo.tickerid,"INVENTORY_WORK_IN_PROGRESS", "FY")
INVESTMENTS_IN_UNCONCSOLIDATE_FY=financial(syminfo.tickerid,"INVESTMENTS_IN_UNCONCSOLIDATE", "FY")
LONG_TERM_DEBT_EXCL_CAPITAL_LEASE_FY=financial(syminfo.tickerid,"LONG_TERM_DEBT_EXCL_CAPITAL_LEASE", "FY")
LONG_TERM_DEBT_FY=financial(syminfo.tickerid,"LONG_TERM_DEBT", "FY")
LONG_TERM_INVESTMENTS_FY=financial(syminfo.tickerid,"LONG_TERM_INVESTMENTS", "FY")
LONG_TERM_NOTE_RECEIVABLE_FY=financial(syminfo.tickerid,"LONG_TERM_NOTE_RECEIVABLE", "FY")
LONG_TERM_OTHER_ASSETS_TOTAL_FY=financial(syminfo.tickerid,"LONG_TERM_OTHER_ASSETS_TOTAL", "FY")
MINORITY_INTEREST_FY=financial(syminfo.tickerid,"MINORITY_INTEREST", "FY")
OTHER_COMMON_EQUITY_FY=financial(syminfo.tickerid,"OTHER_COMMON_EQUITY", "FY")
OTHER_CURRENT_ASSETS_TOTAL_FY=financial(syminfo.tickerid,"OTHER_CURRENT_ASSETS_TOTAL", "FY")
OTHER_CURRENT_LIABILITIES_FY=financial(syminfo.tickerid,"OTHER_CURRENT_LIABILITIES", "FY")
OTHER_INTANGIBLES_NET_FY=financial(syminfo.tickerid,"OTHER_INTANGIBLES_NET", "FY")
OTHER_INVESTMENTS_FY=financial(syminfo.tickerid,"OTHER_INVESTMENTS", "FY")
OTHER_LIABILITIES_TOTAL_FY=financial(syminfo.tickerid,"OTHER_LIABILITIES_TOTAL", "FY")
OTHER_RECEIVABLES_FY=financial(syminfo.tickerid,"OTHER_RECEIVABLES", "FY")


//最後の足で描写処理
if (barstate.islast)
    financial_data_value = array.new_string(0)
    financial_data_description = array.new_string(0)
    // -------------
    array.push(financial_data_description,"買掛金     ACCOUNTS_PAYABLE")
    array.push(financial_data_description,"売掛金 -貿易、ネット     ACCOUNTS_RECEIVABLES_NET")
    array.push(financial_data_description,"未払給与     ACCRUED_PAYROLL")
    array.push(financial_data_description,"減価償却 累計額合計     ACCUM_DEPREC_TOTAL")
    array.push(financial_data_description,"1株当たり純資産額     BOOK_VALUE_PER_SHARE")
    array.push(financial_data_description,"キャピタルリース債務及び オペレーティングリース 債務     CAPITAL_OPERATING_LEASE_OBLIGATIONS")
    array.push(financial_data_description,"現金及び 現金同等物     CASH_N_EQUIVALENTS")
    array.push(financial_data_description,"現金及び短期投資     CASH_N_SHORT_TERM_INVEST")
    array.push(financial_data_description,"資本金・総資産     COMMON_EQUITY_TOTAL")
    array.push(financial_data_description,"長期借入金・キャピタル・リース取引の 当座預金 残高     CURRENT_PORT_DEBT_CAPITAL_LEASES")
    array.push(financial_data_description,"繰延税金資産     DEFERRED_INCOME_CURRENT")
    array.push(financial_data_description,"繰延収益、非流動     DEFERRED_INCOME_NON_CURRENT")
    array.push(financial_data_description,"繰延税金資産     DEFERRED_TAX_ASSESTS")
    array.push(financial_data_description,"繰延税金負債     DEFERRED_TAX_LIABILITIES")
    array.push(financial_data_description,"配当金支払額     DIVIDENDS_PAYABLE")
    array.push(financial_data_description,"のれん・純額     GOODWILL")
    array.push(financial_data_description,"法人税 等の支払額     INCOME_TAX_PAYABLE")
    array.push(financial_data_description,"無形固定資産     INTANGIBLES_NET")
    array.push(financial_data_description,"棚卸資産 -完成品     INVENTORY_FINISHED_GOODS")
    array.push(financial_data_description,"たな卸資産-未払賃金・その他     INVENTORY_PROGRESS_PAYMENTS")
    array.push(financial_data_description,"棚卸資産 -原材料     INVENTORY_RAW_MATERIALS")
    array.push(financial_data_description,"棚卸資産 -仕掛品     INVENTORY_WORK_IN_PROGRESS")
    array.push(financial_data_description,"非 連結子会社 への投資     INVESTMENTS_IN_UNCONCSOLIDATE")
    array.push(financial_data_description,"リース債務を除く長期借入金     LONG_TERM_DEBT_EXCL_CAPITAL_LEASE")
    array.push(financial_data_description,"長期借入金     LONG_TERM_DEBT")
    array.push(financial_data_description,"長期投資     LONG_TERM_INVESTMENTS")
    array.push(financial_data_description,"長期 受取手形     LONG_TERM_NOTE_RECEIVABLE")
    array.push(financial_data_description,"その他の長期資産合計     LONG_TERM_OTHER_ASSETS_TOTAL")
    array.push(financial_data_description,"少数株主持分     MINORITY_INTEREST")
    array.push(financial_data_description,"その他の 普通株式     OTHER_COMMON_EQUITY")
    array.push(financial_data_description,"その他の 流動資産 合計     OTHER_CURRENT_ASSETS_TOTAL")
    array.push(financial_data_description,"その他の流動負債     OTHER_CURRENT_LIABILITIES")
    array.push(financial_data_description,"その他の無形固定資産     OTHER_INTANGIBLES_NET")
    array.push(financial_data_description,"その他の投資     OTHER_INVESTMENTS")
    array.push(financial_data_description,"その他の負債合計     OTHER_LIABILITIES_TOTAL")
    array.push(financial_data_description,"その他の債権     OTHER_RECEIVABLES")
    

    // -------------
    
    array.push(financial_data_value,tostring(ACCOUNTS_PAYABLE_FY[0]))
    array.push(financial_data_value,tostring(ACCOUNTS_RECEIVABLES_NET_FY[0]))
    array.push(financial_data_value,tostring(ACCRUED_PAYROLL_FY[0]))
    array.push(financial_data_value,tostring(ACCUM_DEPREC_TOTAL_FY[0]))
    array.push(financial_data_value,tostring(BOOK_VALUE_PER_SHARE_FY[0]))
    array.push(financial_data_value,tostring(CAPITAL_OPERATING_LEASE_OBLIGATIONS_FY[0]))
    array.push(financial_data_value,tostring(CASH_N_EQUIVALENTS_FY[0]))
    array.push(financial_data_value,tostring(CASH_N_SHORT_TERM_INVEST_FY[0]))
    array.push(financial_data_value,tostring(COMMON_EQUITY_TOTAL_FY[0]))
    array.push(financial_data_value,tostring(CURRENT_PORT_DEBT_CAPITAL_LEASES_FY[0]))
    array.push(financial_data_value,tostring(DEFERRED_INCOME_CURRENT_FY[0]))
    array.push(financial_data_value,tostring(DEFERRED_INCOME_NON_CURRENT_FY[0]))
    array.push(financial_data_value,tostring(DEFERRED_TAX_ASSESTS_FY[0]))
    array.push(financial_data_value,tostring(DEFERRED_TAX_LIABILITIES_FY[0]))
    array.push(financial_data_value,tostring(DIVIDENDS_PAYABLE_FY[0]))
    array.push(financial_data_value,tostring(GOODWILL_FY[0]))
    array.push(financial_data_value,tostring(INCOME_TAX_PAYABLE_FY[0]))
    array.push(financial_data_value,tostring(INTANGIBLES_NET_FY[0]))
    array.push(financial_data_value,tostring(INVENTORY_FINISHED_GOODS_FY[0]))
    array.push(financial_data_value,tostring(INVENTORY_PROGRESS_PAYMENTS_FY[0]))
    array.push(financial_data_value,tostring(INVENTORY_RAW_MATERIALS_FY[0]))
    array.push(financial_data_value,tostring(INVENTORY_WORK_IN_PROGRESS_FY[0]))
    array.push(financial_data_value,tostring(INVESTMENTS_IN_UNCONCSOLIDATE_FY[0]))
    array.push(financial_data_value,tostring(LONG_TERM_DEBT_EXCL_CAPITAL_LEASE_FY[0]))
    array.push(financial_data_value,tostring(LONG_TERM_DEBT_FY[0]))
    array.push(financial_data_value,tostring(LONG_TERM_INVESTMENTS_FY[0]))
    array.push(financial_data_value,tostring(LONG_TERM_NOTE_RECEIVABLE_FY[0]))
    array.push(financial_data_value,tostring(LONG_TERM_OTHER_ASSETS_TOTAL_FY[0]))
    array.push(financial_data_value,tostring(MINORITY_INTEREST_FY[0]))
    array.push(financial_data_value,tostring(OTHER_COMMON_EQUITY_FY[0]))
    array.push(financial_data_value,tostring(OTHER_CURRENT_ASSETS_TOTAL_FY[0]))
    array.push(financial_data_value,tostring(OTHER_CURRENT_LIABILITIES_FY[0]))
    array.push(financial_data_value,tostring(OTHER_INTANGIBLES_NET_FY[0]))
    array.push(financial_data_value,tostring(OTHER_INVESTMENTS_FY[0]))
    array.push(financial_data_value,tostring(OTHER_LIABILITIES_TOTAL_FY[0]))
    array.push(financial_data_value,tostring(OTHER_RECEIVABLES_FY[0]))
    
    
    var label_text = " 【2 貸借対照表(1/2)(Balance Sheet)】\n"
    for i=0 to array.size(financial_data_value)-1
        label_text := label_text + array.get(financial_data_description,i)+"\t\t:\t\t"
        label_text := label_text + array.get(financial_data_value,i)+"\n"
    
    var label l = na
    l := label.new( bar_index, 0,
     yloc=yloc.price, style=label.style_label_right,
     color=color.green,textcolor=color.white,textalign=text.align_left,size=size.large,
     text=label_text )
         

【2 貸借対照表(2/2)(Balance Sheet)】

サンプル画像

f:id:kabuist:20210109211643p:plain

コード
//@version=4
// finnancialデータを一覧で確認するスクリプト
// 2 貸借対照表(2/2)(Balance Sheet)

study("WR_FinancialDataList_to_BalanceSheet_2")

// 登録一覧
PAID_IN_CAPITAL_FY=financial(syminfo.tickerid,"PAID_IN_CAPITAL", "FY")
PPE_TOTAL_GROSS_FY=financial(syminfo.tickerid,"PPE_TOTAL_GROSS", "FY")
PPE_TOTAL_NET_FY=financial(syminfo.tickerid,"PPE_TOTAL_NET", "FY")
PREFERRED_STOCK_CARRYING_VALUE_FY=financial(syminfo.tickerid,"PREFERRED_STOCK_CARRYING_VALUE", "FY")
PREPAID_EXPENSES_FY=financial(syminfo.tickerid,"PREPAID_EXPENSES", "FY")
PROVISION_F_RISKS_FY=financial(syminfo.tickerid,"PROVISION_F_RISKS", "FY")
RETAINED_EARNINGS_FY=financial(syminfo.tickerid,"RETAINED_EARNINGS", "FY")
SHORT_TERM_DEBT_EXCL_CURRENT_PORT_FY=financial(syminfo.tickerid,"SHORT_TERM_DEBT_EXCL_CURRENT_PORT", "FY")
SHORT_TERM_DEBT_FY=financial(syminfo.tickerid,"SHORT_TERM_DEBT", "FY")
SHORT_TERM_INVEST_FY=financial(syminfo.tickerid,"SHORT_TERM_INVEST", "FY")
SHRHLDRS_EQUITY_FY=financial(syminfo.tickerid,"SHRHLDRS_EQUITY", "FY")
TOTAL_ASSETS_FY=financial(syminfo.tickerid,"TOTAL_ASSETS", "FY")
TOTAL_CURRENT_ASSETS_FY=financial(syminfo.tickerid,"TOTAL_CURRENT_ASSETS", "FY")
TOTAL_CURRENT_LIABILITIES_FY=financial(syminfo.tickerid,"TOTAL_CURRENT_LIABILITIES", "FY")
TOTAL_DEBT_FY=financial(syminfo.tickerid,"TOTAL_DEBT", "FY")
TOTAL_EQUITY_FY=financial(syminfo.tickerid,"TOTAL_EQUITY", "FY")
TOTAL_INVENTORY_FY=financial(syminfo.tickerid,"TOTAL_INVENTORY", "FY")
TOTAL_LIABILITIES_FY=financial(syminfo.tickerid,"TOTAL_LIABILITIES", "FY")
TOTAL_LIABILITIES_SHRHLDRS_EQUITY_FY=financial(syminfo.tickerid,"TOTAL_LIABILITIES_SHRHLDRS_EQUITY", "FY")
TOTAL_NON_CURRENT_ASSETS_FY=financial(syminfo.tickerid,"TOTAL_NON_CURRENT_ASSETS", "FY")
TOTAL_NON_CURRENT_LIABILITIES_FY=financial(syminfo.tickerid,"TOTAL_NON_CURRENT_LIABILITIES", "FY")
TOTAL_RECEIVABLES_NET_FY=financial(syminfo.tickerid,"TOTAL_RECEIVABLES_NET", "FY")
TOTAL_SHARES_OUTSTANDING_FY=financial(syminfo.tickerid,"TOTAL_SHARES_OUTSTANDING", "FY")


//最後の足で描写処理
if (barstate.islast)
    financial_data_value = array.new_string(0)
    financial_data_description = array.new_string(0)
    // -------------
    array.push(financial_data_description,"資本金の支払い     PAID_IN_CAPITAL")
    array.push(financial_data_description,"有形固定資産合計     PPE_TOTAL_GROSS")
    array.push(financial_data_description,"有形固定資産純額     PPE_TOTAL_NET")
    array.push(financial_data_description,"優先株式 、 貸借対照表 計上額     PREFERRED_STOCK_CARRYING_VALUE")
    array.push(financial_data_description,"前払い費用     PREPAID_EXPENSES")
    array.push(financial_data_description,"リスク 引当金 繰入額     PROVISION_F_RISKS")
    array.push(financial_data_description,"利益剰余金     RETAINED_EARNINGS")
    array.push(financial_data_description,"短期借入金(1年以内返済予定の長期借入金を除く     SHORT_TERM_DEBT_EXCL_CURRENT_PORT")
    array.push(financial_data_description,"短期借入金     SHORT_TERM_DEBT")
    array.push(financial_data_description,"短期投資     SHORT_TERM_INVEST")
    array.push(financial_data_description,"株主資本     SHRHLDRS_EQUITY")
    array.push(financial_data_description,"総資産     TOTAL_ASSETS")
    array.push(financial_data_description,"流動資産 合計     TOTAL_CURRENT_ASSETS")
    array.push(financial_data_description,"流動負債合計     TOTAL_CURRENT_LIABILITIES")
    array.push(financial_data_description,"負債総額     TOTAL_DEBT")
    array.push(financial_data_description,"純資産の部     TOTAL_EQUITY")
    array.push(financial_data_description,"棚卸資産 合計     TOTAL_INVENTORY")
    array.push(financial_data_description,"負債の部     TOTAL_LIABILITIES")
    array.push(financial_data_description,"負債・株主資本合計     TOTAL_LIABILITIES_SHRHLDRS_EQUITY")
    array.push(financial_data_description,"固定資産の部) Ⅰ 流動資産 合計     TOTAL_NON_CURRENT_ASSETS")
    array.push(financial_data_description,"固定負債 の部) Ⅰ 流動負債の部     TOTAL_NON_CURRENT_LIABILITIES")
    array.push(financial_data_description,"売上債権合計(純額) (単位:百万円     TOTAL_RECEIVABLES_NET")
    array.push(financial_data_description,"発行済株式総数     TOTAL_SHARES_OUTSTANDING")
    // -------------
    
    array.push(financial_data_value,tostring(PAID_IN_CAPITAL_FY[0]))
    array.push(financial_data_value,tostring(PPE_TOTAL_GROSS_FY[0]))
    array.push(financial_data_value,tostring(PPE_TOTAL_NET_FY[0]))
    array.push(financial_data_value,tostring(PREFERRED_STOCK_CARRYING_VALUE_FY[0]))
    array.push(financial_data_value,tostring(PREPAID_EXPENSES_FY[0]))
    array.push(financial_data_value,tostring(PROVISION_F_RISKS_FY[0]))
    array.push(financial_data_value,tostring(RETAINED_EARNINGS_FY[0]))
    array.push(financial_data_value,tostring(SHORT_TERM_DEBT_EXCL_CURRENT_PORT_FY[0]))
    array.push(financial_data_value,tostring(SHORT_TERM_DEBT_FY[0]))
    array.push(financial_data_value,tostring(SHORT_TERM_INVEST_FY[0]))
    array.push(financial_data_value,tostring(SHRHLDRS_EQUITY_FY[0]))
    array.push(financial_data_value,tostring(TOTAL_ASSETS_FY[0]))
    array.push(financial_data_value,tostring(TOTAL_CURRENT_ASSETS_FY[0]))
    array.push(financial_data_value,tostring(TOTAL_CURRENT_LIABILITIES_FY[0]))
    array.push(financial_data_value,tostring(TOTAL_DEBT_FY[0]))
    array.push(financial_data_value,tostring(TOTAL_EQUITY_FY[0]))
    array.push(financial_data_value,tostring(TOTAL_INVENTORY_FY[0]))
    array.push(financial_data_value,tostring(TOTAL_LIABILITIES_FY[0]))
    array.push(financial_data_value,tostring(TOTAL_LIABILITIES_SHRHLDRS_EQUITY_FY[0]))
    array.push(financial_data_value,tostring(TOTAL_NON_CURRENT_ASSETS_FY[0]))
    array.push(financial_data_value,tostring(TOTAL_NON_CURRENT_LIABILITIES_FY[0]))
    array.push(financial_data_value,tostring(TOTAL_RECEIVABLES_NET_FY[0]))
    array.push(financial_data_value,tostring(TOTAL_SHARES_OUTSTANDING_FY[0]))
    
    
    var label_text = " 【2 貸借対照表(2/2)(Balance Sheet)】\n"
    for i=0 to array.size(financial_data_value)-1
        label_text := label_text + array.get(financial_data_description,i)+"\t\t:\t\t"
        label_text := label_text + array.get(financial_data_value,i)+"\n"
    
    var label l = na
    l := label.new( bar_index, 0,
     yloc=yloc.price, style=label.style_label_right,
     color=color.green,textcolor=color.white,textalign=text.align_left,size=size.large,
     text=label_text )
         

【3 キャッシュフロー(Cash Flow)】

サンプル画像

f:id:kabuist:20210109211806p:plain

コード
//@version=4
// finnancialデータを一覧で確認するスクリプト
// 2 貸借対照表(2/2)(Balance Sheet)

study("WR_FinancialDataList_to_CashFlow")

// 登録一覧
CAPITAL_EXPENDITURES_FIXED_ASSETS_FY=financial(syminfo.tickerid,"CAPITAL_EXPENDITURES_FIXED_ASSETS", "FY")
CAPITAL_EXPENDITURES_FY=financial(syminfo.tickerid,"CAPITAL_EXPENDITURES", "FY")
CAPITAL_EXPENDITURES_OTHER_ASSETS_FY=financial(syminfo.tickerid,"CAPITAL_EXPENDITURES_OTHER_ASSETS", "FY")
CASH_F_FINANCING_ACTIVITIES_FY=financial(syminfo.tickerid,"CASH_F_FINANCING_ACTIVITIES", "FY")
CASH_F_INVESTING_ACTIVITIES_FY=financial(syminfo.tickerid,"CASH_F_INVESTING_ACTIVITIES", "FY")
CASH_F_OPERATING_ACTIVITIES_FY=financial(syminfo.tickerid,"CASH_F_OPERATING_ACTIVITIES", "FY")
CASH_FLOW_DEFERRED_TAXES_FY=financial(syminfo.tickerid,"CASH_FLOW_DEFERRED_TAXES", "FY")
CASH_FLOW_DEPRECATION_N_AMORTIZATION_FY=financial(syminfo.tickerid,"CASH_FLOW_DEPRECATION_N_AMORTIZATION", "FY")
CHANGE_IN_ACCOUNTS_PAYABLE_FY=financial(syminfo.tickerid,"CHANGE_IN_ACCOUNTS_PAYABLE", "FY")
CHANGE_IN_ACCOUNTS_RECEIVABLE_FY=financial(syminfo.tickerid,"CHANGE_IN_ACCOUNTS_RECEIVABLE", "FY")
CHANGE_IN_ACCRUED_EXPENSES_FY=financial(syminfo.tickerid,"CHANGE_IN_ACCRUED_EXPENSES", "FY")
CHANGE_IN_INVENTORIES_FY=financial(syminfo.tickerid,"CHANGE_IN_INVENTORIES", "FY")
CHANGE_IN_OTHER_ASSETS_FY=financial(syminfo.tickerid,"CHANGE_IN_OTHER_ASSETS", "FY")
CHANGE_IN_TAXES_PAYABLE_FY=financial(syminfo.tickerid,"CHANGE_IN_TAXES_PAYABLE", "FY")
CHANGES_IN_WORKING_CAPITAL_FY=financial(syminfo.tickerid,"CHANGES_IN_WORKING_CAPITAL", "FY")
FREE_CASH_FLOW_FY=financial(syminfo.tickerid,"FREE_CASH_FLOW", "FY")
FUNDS_F_OPERATIONS_FY=financial(syminfo.tickerid,"FUNDS_F_OPERATIONS", "FY")
ISSUANCE_OF_DEBT_NET_FY=financial(syminfo.tickerid,"ISSUANCE_OF_DEBT_NET", "FY")
ISSUANCE_OF_LONG_TERM_DEBT_FY=financial(syminfo.tickerid,"ISSUANCE_OF_LONG_TERM_DEBT", "FY")
ISSUANCE_OF_OTHER_DEBT_FY=financial(syminfo.tickerid,"ISSUANCE_OF_OTHER_DEBT", "FY")
ISSUANCE_OF_SHORT_TERM_DEBT_FY=financial(syminfo.tickerid,"ISSUANCE_OF_SHORT_TERM_DEBT", "FY")
ISSUANCE_OF_STOCK_NET_FY=financial(syminfo.tickerid,"ISSUANCE_OF_STOCK_NET", "FY")
NET_INCOME_STARTING_LINE_FY=financial(syminfo.tickerid,"NET_INCOME_STARTING_LINE", "FY")
NON_CASH_ITEMS_FY=financial(syminfo.tickerid,"NON_CASH_ITEMS", "FY")
OTHER_FINANCING_CASH_FLOW_ITEMS_TOTAL_FY=financial(syminfo.tickerid,"OTHER_FINANCING_CASH_FLOW_ITEMS_TOTAL", "FY")
OTHER_FINANCING_CASH_FLOW_SOURCES_FY=financial(syminfo.tickerid,"OTHER_FINANCING_CASH_FLOW_SOURCES", "FY")
OTHER_FINANCING_CASH_FLOW_USES_FY=financial(syminfo.tickerid,"OTHER_FINANCING_CASH_FLOW_USES", "FY")
OTHER_INVESTING_CASH_FLOW_ITEMS_TOTAL_FY=financial(syminfo.tickerid,"OTHER_INVESTING_CASH_FLOW_ITEMS_TOTAL", "FY")
OTHER_INVESTING_CASH_FLOW_SOURCES_FY=financial(syminfo.tickerid,"OTHER_INVESTING_CASH_FLOW_SOURCES", "FY")
OTHER_INVESTING_CASH_FLOW_USES_FY=financial(syminfo.tickerid,"OTHER_INVESTING_CASH_FLOW_USES", "FY")
PURCHASE_OF_BUSINESS_FY=financial(syminfo.tickerid,"PURCHASE_OF_BUSINESS", "FY")
PURCHASE_OF_INVESTMENTS_FY=financial(syminfo.tickerid,"PURCHASE_OF_INVESTMENTS", "FY")
PURCHASE_OF_STOCK_FY=financial(syminfo.tickerid,"PURCHASE_OF_STOCK", "FY")
PURCHASE_SALE_BUSINESS_FY=financial(syminfo.tickerid,"PURCHASE_SALE_BUSINESS", "FY")
PURCHASE_SALE_INVESTMENTS_FY=financial(syminfo.tickerid,"PURCHASE_SALE_INVESTMENTS", "FY")
SALE_OF_STOCK_FY=financial(syminfo.tickerid,"SALE_OF_STOCK", "FY")
SALES_OF_BUSINESS_FY=financial(syminfo.tickerid,"SALES_OF_BUSINESS", "FY")
SALES_OF_INVESTMENTS_FY=financial(syminfo.tickerid,"SALES_OF_INVESTMENTS", "FY")
TOTAL_CASH_DIVIDENDS_PAID_FY=financial(syminfo.tickerid,"TOTAL_CASH_DIVIDENDS_PAID", "FY")
TOTAL_EXTRA_ITEMS_FY=financial(syminfo.tickerid,"TOTAL_EXTRA_ITEMS", "FY")


//最後の足で描写処理
if (barstate.islast)
    financial_data_value = array.new_string(0)
    financial_data_description = array.new_string(0)
    // -------------
    array.push(financial_data_description,"設備投資-固定資産     CAPITAL_EXPENDITURES_FIXED_ASSETS")
    array.push(financial_data_description,"設備投資額     CAPITAL_EXPENDITURES")
    array.push(financial_data_description,"設備投資-その他の資産     CAPITAL_EXPENDITURES_OTHER_ASSETS")
    array.push(financial_data_description,"財務活動による キャッシュ・フロー     CASH_F_FINANCING_ACTIVITIES")
    array.push(financial_data_description,"投資活動による キャッシュ・フロー     CASH_F_INVESTING_ACTIVITIES")
    array.push(financial_data_description,"営業活動による キャッシュ・フロー     CASH_F_OPERATING_ACTIVITIES")
    array.push(financial_data_description,"繰延税金資産 ( キャッシュ・フロー     CASH_FLOW_DEFERRED_TAXES")
    array.push(financial_data_description,"減価償却 費( キャッシュフロー     CASH_FLOW_DEPRECATION_N_AMORTIZATION")
    array.push(financial_data_description,"買掛金の増減額     CHANGE_IN_ACCOUNTS_PAYABLE")
    array.push(financial_data_description,"売掛金 の増減額     CHANGE_IN_ACCOUNTS_RECEIVABLE")
    array.push(financial_data_description,"未払費用の増減     CHANGE_IN_ACCRUED_EXPENSES")
    array.push(financial_data_description,"棚卸資産 の増減     CHANGE_IN_INVENTORIES")
    array.push(financial_data_description,"その他の資産・負債の増減     CHANGE_IN_OTHER_ASSETS")
    array.push(financial_data_description,"未払 法人税 等の増減額     CHANGE_IN_TAXES_PAYABLE")
    array.push(financial_data_description,"運転資金の推移     CHANGES_IN_WORKING_CAPITAL")
    array.push(financial_data_description,"フリー キャッシュフロー     FREE_CASH_FLOW")
    array.push(financial_data_description,"営業活動による キャッシュ・フロー     FUNDS_F_OPERATIONS")
    array.push(financial_data_description,"借入金の発行(消却)純額     ISSUANCE_OF_DEBT_NET")
    array.push(financial_data_description,"長期借入金の発行(償還)について     ISSUANCE_OF_LONG_TERM_DEBT")
    array.push(financial_data_description,"その他の債務の発行(除却)     ISSUANCE_OF_OTHER_DEBT")
    array.push(financial_data_description,"短期借入金の発行(消却)について     ISSUANCE_OF_SHORT_TERM_DEBT")
    array.push(financial_data_description,"株式の発行(消却)純額     ISSUANCE_OF_STOCK_NET")
    array.push(financial_data_description,"当期純利益 ( キャッシュフロー     NET_INCOME_STARTING_LINE")
    array.push(financial_data_description,"現金以外の項目     NON_CASH_ITEMS")
    array.push(financial_data_description,"その他の財務活動による キャッシュ・フロー     OTHER_FINANCING_CASH_FLOW_ITEMS_TOTAL")
    array.push(financial_data_description,"財務活動による キャッシュ・フロー     OTHER_FINANCING_CASH_FLOW_SOURCES")
    array.push(financial_data_description,"財務活動による キャッシュ・フロー     OTHER_FINANCING_CASH_FLOW_USES")
    array.push(financial_data_description,"その他の投資 キャッシュ・フロー 項目     OTHER_INVESTING_CASH_FLOW_ITEMS_TOTAL")
    array.push(financial_data_description,"投資活動による キャッシュ・フロー     OTHER_INVESTING_CASH_FLOW_SOURCES")
    array.push(financial_data_description,"投資活動による キャッシュ・フロー     OTHER_INVESTING_CASH_FLOW_USES")
    array.push(financial_data_description,"事業譲受け     PURCHASE_OF_BUSINESS")
    array.push(financial_data_description,"投資先の購入     PURCHASE_OF_INVESTMENTS")
    array.push(financial_data_description,"普通株式 ・ 優先株式 の取得     PURCHASE_OF_STOCK")
    array.push(financial_data_description,"事業の売買、ネット     PURCHASE_SALE_BUSINESS")
    array.push(financial_data_description,"投資有価証券の取得・売却(純額     PURCHASE_SALE_INVESTMENTS")
    array.push(financial_data_description,"普通株式 ・ 優先株式 の売却     SALE_OF_STOCK")
    array.push(financial_data_description,"固定資産・事業の売却     SALES_OF_BUSINESS")
    array.push(financial_data_description,"投資有価証券の売却・償還時期     SALES_OF_INVESTMENTS")
    array.push(financial_data_description,"配当金総額     TOTAL_CASH_DIVIDENDS_PAID")
    array.push(financial_data_description,"非日常的なアイテム     TOTAL_EXTRA_ITEMS")
    
    // -------------
    
    array.push(financial_data_value,tostring(CAPITAL_EXPENDITURES_FIXED_ASSETS_FY[0]))
    array.push(financial_data_value,tostring(CAPITAL_EXPENDITURES_FY[0]))
    array.push(financial_data_value,tostring(CAPITAL_EXPENDITURES_OTHER_ASSETS_FY[0]))
    array.push(financial_data_value,tostring(CASH_F_FINANCING_ACTIVITIES_FY[0]))
    array.push(financial_data_value,tostring(CASH_F_INVESTING_ACTIVITIES_FY[0]))
    array.push(financial_data_value,tostring(CASH_F_OPERATING_ACTIVITIES_FY[0]))
    array.push(financial_data_value,tostring(CASH_FLOW_DEFERRED_TAXES_FY[0]))
    array.push(financial_data_value,tostring(CASH_FLOW_DEPRECATION_N_AMORTIZATION_FY[0]))
    array.push(financial_data_value,tostring(CHANGE_IN_ACCOUNTS_PAYABLE_FY[0]))
    array.push(financial_data_value,tostring(CHANGE_IN_ACCOUNTS_RECEIVABLE_FY[0]))
    array.push(financial_data_value,tostring(CHANGE_IN_ACCRUED_EXPENSES_FY[0]))
    array.push(financial_data_value,tostring(CHANGE_IN_INVENTORIES_FY[0]))
    array.push(financial_data_value,tostring(CHANGE_IN_OTHER_ASSETS_FY[0]))
    array.push(financial_data_value,tostring(CHANGE_IN_TAXES_PAYABLE_FY[0]))
    array.push(financial_data_value,tostring(CHANGES_IN_WORKING_CAPITAL_FY[0]))
    array.push(financial_data_value,tostring(FREE_CASH_FLOW_FY[0]))
    array.push(financial_data_value,tostring(FUNDS_F_OPERATIONS_FY[0]))
    array.push(financial_data_value,tostring(ISSUANCE_OF_DEBT_NET_FY[0]))
    array.push(financial_data_value,tostring(ISSUANCE_OF_LONG_TERM_DEBT_FY[0]))
    array.push(financial_data_value,tostring(ISSUANCE_OF_OTHER_DEBT_FY[0]))
    array.push(financial_data_value,tostring(ISSUANCE_OF_SHORT_TERM_DEBT_FY[0]))
    array.push(financial_data_value,tostring(ISSUANCE_OF_STOCK_NET_FY[0]))
    array.push(financial_data_value,tostring(NET_INCOME_STARTING_LINE_FY[0]))
    array.push(financial_data_value,tostring(NON_CASH_ITEMS_FY[0]))
    array.push(financial_data_value,tostring(OTHER_FINANCING_CASH_FLOW_ITEMS_TOTAL_FY[0]))
    array.push(financial_data_value,tostring(OTHER_FINANCING_CASH_FLOW_SOURCES_FY[0]))
    array.push(financial_data_value,tostring(OTHER_FINANCING_CASH_FLOW_USES_FY[0]))
    array.push(financial_data_value,tostring(OTHER_INVESTING_CASH_FLOW_ITEMS_TOTAL_FY[0]))
    array.push(financial_data_value,tostring(OTHER_INVESTING_CASH_FLOW_SOURCES_FY[0]))
    array.push(financial_data_value,tostring(OTHER_INVESTING_CASH_FLOW_USES_FY[0]))
    array.push(financial_data_value,tostring(PURCHASE_OF_BUSINESS_FY[0]))
    array.push(financial_data_value,tostring(PURCHASE_OF_INVESTMENTS_FY[0]))
    array.push(financial_data_value,tostring(PURCHASE_OF_STOCK_FY[0]))
    array.push(financial_data_value,tostring(PURCHASE_SALE_BUSINESS_FY[0]))
    array.push(financial_data_value,tostring(PURCHASE_SALE_INVESTMENTS_FY[0]))
    array.push(financial_data_value,tostring(SALE_OF_STOCK_FY[0]))
    array.push(financial_data_value,tostring(SALES_OF_BUSINESS_FY[0]))
    array.push(financial_data_value,tostring(SALES_OF_INVESTMENTS_FY[0]))
    array.push(financial_data_value,tostring(TOTAL_CASH_DIVIDENDS_PAID_FY[0]))
    array.push(financial_data_value,tostring(TOTAL_EXTRA_ITEMS_FY[0]))
    
    
    var label_text = " 【3 キャッシュフロー(Cash Flow)】\n"
    for i=0 to array.size(financial_data_value)-1
        label_text := label_text + array.get(financial_data_description,i)+"\t\t:\t\t"
        label_text := label_text + array.get(financial_data_value,i)+"\n"
    
    var label l = na
    l := label.new( bar_index, 0,
     yloc=yloc.price, style=label.style_label_right,
     color=color.green,textcolor=color.white,textalign=text.align_left,size=size.large,
     text=label_text )
         
    

【4 比率(1/2)(Ratios)】

サンプル画像

f:id:kabuist:20210109212003p:plain

コード
//@version=4
// finnancialデータを一覧で確認するスクリプト
// 【4 比率(1/2)(Ratios)】

study("WR_FinancialDataList_to_Ratios1")

// 登録一覧
ACCRUALS_RATIO_FY=financial(syminfo.tickerid,"ACCRUALS_RATIO", "FY")
ASSET_TURNOVER_FY=financial(syminfo.tickerid,"ASSET_TURNOVER", "FY")
BOOK_TANGIBLE_PER_SHARE_FY=financial(syminfo.tickerid,"BOOK_TANGIBLE_PER_SHARE", "FY")
CASH_TO_DEBT_FY=financial(syminfo.tickerid,"CASH_TO_DEBT", "FY")
COGS_TO_REVENUE_FY=financial(syminfo.tickerid,"COGS_TO_REVENUE", "FY")
CURRENT_RATIO_FY=financial(syminfo.tickerid,"CURRENT_RATIO", "FY")
DAY_SALES_OUT_FY=financial(syminfo.tickerid,"DAY_SALES_OUT", "FY")
DAYS_INVENT_FY=financial(syminfo.tickerid,"DAYS_INVENT", "FY")
DAYS_PAY_FY=financial(syminfo.tickerid,"DAYS_PAY", "FY")
DEBT_TO_ASSET_FY=financial(syminfo.tickerid,"DEBT_TO_ASSET", "FY")
DEBT_TO_EBITDA_FY=financial(syminfo.tickerid,"DEBT_TO_EBITDA", "FY")
DEBT_TO_EQUITY_FY=financial(syminfo.tickerid,"DEBT_TO_EQUITY", "FY")
DEBT_TO_REVENUE_FY=financial(syminfo.tickerid,"DEBT_TO_REVENUE", "FY")
EARNINGS_ESTIMATE_FY=financial(syminfo.tickerid,"EARNINGS_ESTIMATE", "FY")
EARNINGS_PER_SHARE_BASIC_ONE_YEAR_GROWTH_FY=financial(syminfo.tickerid,"EARNINGS_PER_SHARE_BASIC_ONE_YEAR_GROWTH", "FY")
EARNINGS_PER_SHARE_DILUTED_ONE_YEAR_GROWTH_FY=financial(syminfo.tickerid,"EARNINGS_PER_SHARE_DILUTED_ONE_YEAR_GROWTH", "FY")
EBITDA_MARGIN_FY=financial(syminfo.tickerid,"EBITDA_MARGIN", "FY")
EF_INTEREST_DEBT_FY=financial(syminfo.tickerid,"EF_INTEREST_DEBT", "FY")
ENTERPRISE_VALUE_FY=financial(syminfo.tickerid,"ENTERPRISE_VALUE", "FY")
EQUITY_TO_ASSET_FY=financial(syminfo.tickerid,"EQUITY_TO_ASSET", "FY")
EV_EBIT_FY=financial(syminfo.tickerid,"EV_EBIT", "FY")
EV_EBITDA_FY=financial(syminfo.tickerid,"EV_EBITDA", "FY")
EV_REVENUE_FY=financial(syminfo.tickerid,"EV_REVENUE", "FY")
GOODWILL_TO_ASSET_FY=financial(syminfo.tickerid,"GOODWILL_TO_ASSET", "FY")
GRAHAM_NUMBERS_FY=financial(syminfo.tickerid,"GRAHAM_NUMBERS", "FY")
INTERST_COVER_FY=financial(syminfo.tickerid,"INTERST_COVER", "FY")
INVENT_TO_REVENUE_FY=financial(syminfo.tickerid,"INVENT_TO_REVENUE", "FY")
INVENT_TURNOVER_FY=financial(syminfo.tickerid,"INVENT_TURNOVER", "FY")
LT_DEBT_ASSET_FY=financial(syminfo.tickerid,"LT_DEBT_ASSET", "FY")
NCAVPS_RATIO_FY=financial(syminfo.tickerid,"NCAVPS_RATIO", "FY")
NET_INCOME_MGN_ONE_YEAR_GROWTH_FY=financial(syminfo.tickerid,"NET_INCOME_MGN_ONE_YEAR_GROWTH", "FY")
NET_INCOME_PER_EMPLOYEE_FY=financial(syminfo.tickerid,"NET_INCOME_PER_EMPLOYEE", "FY")
NUMBER_OF_EMPLOYEES_FY=financial(syminfo.tickerid,"NUMBER_OF_EMPLOYEES", "FY")
OPERATING_MARGIN_FY=financial(syminfo.tickerid,"OPERATING_MARGIN", "FY")
QUALITY_RATIO_FY=financial(syminfo.tickerid,"QUALITY_RATIO", "FY")
QUICK_RATIO_FY=financial(syminfo.tickerid,"QUICK_RATIO", "FY")
RETURN_ON_EQUITY_FY=financial(syminfo.tickerid,"RETURN_ON_EQUITY", "FY")
RETURN_TANG_ASSET_FY=financial(syminfo.tickerid,"RETURN_TANG_ASSET", "FY")
RETURN_TANG_EQUITY_FY=financial(syminfo.tickerid,"RETURN_TANG_EQUITY", "FY")
REVENUE_ONE_YEAR_GROWTH_FY=financial(syminfo.tickerid,"REVENUE_ONE_YEAR_GROWTH", "FY")


//最後の足で描写処理
if (barstate.islast)
    financial_data_value = array.new_string(0)
    financial_data_description = array.new_string(0)
    // -------------
    array.push(financial_data_description,"引当金 繰入額     ACCRUALS_RATIO")
    array.push(financial_data_description,"資産回転率     ASSET_TURNOVER")
    array.push(financial_data_description,"1株当たり純資産額     BOOK_TANGIBLE_PER_SHARE")
    array.push(financial_data_description,"キャッシュ・デビット     CASH_TO_DEBT")
    array.push(financial_data_description,"売上高に対するCOGSの比率     COGS_TO_REVENUE")
    array.push(financial_data_description,"現在の比率     CURRENT_RATIO")
    array.push(financial_data_description,"卓越した日の販売     DAY_SALES_OUT")
    array.push(financial_data_description,"日の在庫     DAYS_INVENT")
    array.push(financial_data_description,"支払可能日数     DAYS_PAY")
    array.push(financial_data_description,"有利子負債比率     DEBT_TO_ASSET")
    array.push(financial_data_description,"有利子負債対EBITDA     DEBT_TO_EBITDA")
    array.push(financial_data_description,"有利子負債比率     DEBT_TO_EQUITY")
    array.push(financial_data_description,"有利子負債比率     DEBT_TO_REVENUE")
    array.push(financial_data_description,"EPS推定値     EARNINGS_ESTIMATE")
    array.push(financial_data_description,"EPSベーシック1年成長率     EARNINGS_PER_SHARE_BASIC_ONE_YEAR_GROWTH")
    array.push(financial_data_description,"1株当たり 当期純利益 潜在株式調整後1株当たり 当期純利益     EARNINGS_PER_SHARE_DILUTED_ONE_YEAR_GROWTH")
    array.push(financial_data_description,"EBITDAマージン     EBITDA_MARGIN")
    array.push(financial_data_description,"有利子負債の実効 金利     EF_INTEREST_DEBT")
    array.push(financial_data_description,"企業価値     ENTERPRISE_VALUE")
    array.push(financial_data_description,"自己資本比率     EQUITY_TO_ASSET")
    array.push(financial_data_description,"EV-toEBIT     EV_EBIT")
    array.push(financial_data_description,"EV-toEBITDA     EV_EBITDA")
    array.push(financial_data_description,"EV対レベニュー     EV_REVENUE")
    array.push(financial_data_description,"のれんと資産の関係     GOODWILL_TO_ASSET")
    array.push(financial_data_description,"グラハムの番号     GRAHAM_NUMBERS")
    array.push(financial_data_description,"イン タレス ト カバレッジ     INTERST_COVER")
    array.push(financial_data_description,"たな卸資産売上高     INVENT_TO_REVENUE")
    array.push(financial_data_description,"在庫回転率     INVENT_TURNOVER")
    array.push(financial_data_description,"総資産経常利益率     LT_DEBT_ASSET")
    array.push(financial_data_description,"1株当たり純資産額     NCAVPS_RATIO")
    array.push(financial_data_description,"ネットマージン     NET_INCOME_MGN_ONE_YEAR_GROWTH")
    array.push(financial_data_description,"従業員一人当たり 当期純利益     NET_INCOME_PER_EMPLOYEE")
    array.push(financial_data_description,"従業員数     NUMBER_OF_EMPLOYEES")
    array.push(financial_data_description,"営業利益率     OPERATING_MARGIN")
    array.push(financial_data_description,"品質比     QUALITY_RATIO")
    array.push(financial_data_description,"クイックレシオ     QUICK_RATIO")
    array.push(financial_data_description,"自己資本利益率     RETURN_ON_EQUITY")
    array.push(financial_data_description,"有形固定資産利益率     RETURN_TANG_ASSET")
    array.push(financial_data_description,"有形 株主資本利益率     RETURN_TANG_EQUITY")
    array.push(financial_data_description,"収入 1年間の成長率     REVENUE_ONE_YEAR_GROWTH")
    
    // -------------
    
    array.push(financial_data_value,tostring(ACCRUALS_RATIO_FY[0]))
    array.push(financial_data_value,tostring(ASSET_TURNOVER_FY[0]))
    array.push(financial_data_value,tostring(BOOK_TANGIBLE_PER_SHARE_FY[0]))
    array.push(financial_data_value,tostring(CASH_TO_DEBT_FY[0]))
    array.push(financial_data_value,tostring(COGS_TO_REVENUE_FY[0]))
    array.push(financial_data_value,tostring(CURRENT_RATIO_FY[0]))
    array.push(financial_data_value,tostring(DAY_SALES_OUT_FY[0]))
    array.push(financial_data_value,tostring(DAYS_INVENT_FY[0]))
    array.push(financial_data_value,tostring(DAYS_PAY_FY[0]))
    array.push(financial_data_value,tostring(DEBT_TO_ASSET_FY[0]))
    array.push(financial_data_value,tostring(DEBT_TO_EBITDA_FY[0]))
    array.push(financial_data_value,tostring(DEBT_TO_EQUITY_FY[0]))
    array.push(financial_data_value,tostring(DEBT_TO_REVENUE_FY[0]))
    array.push(financial_data_value,tostring(EARNINGS_ESTIMATE_FY[0]))
    array.push(financial_data_value,tostring(EARNINGS_PER_SHARE_BASIC_ONE_YEAR_GROWTH_FY[0]))
    array.push(financial_data_value,tostring(EARNINGS_PER_SHARE_DILUTED_ONE_YEAR_GROWTH_FY[0]))
    array.push(financial_data_value,tostring(EBITDA_MARGIN_FY[0]))
    array.push(financial_data_value,tostring(EF_INTEREST_DEBT_FY[0]))
    array.push(financial_data_value,tostring(ENTERPRISE_VALUE_FY[0]))
    array.push(financial_data_value,tostring(EQUITY_TO_ASSET_FY[0]))
    array.push(financial_data_value,tostring(EV_EBIT_FY[0]))
    array.push(financial_data_value,tostring(EV_EBITDA_FY[0]))
    array.push(financial_data_value,tostring(EV_REVENUE_FY[0]))
    array.push(financial_data_value,tostring(GOODWILL_TO_ASSET_FY[0]))
    array.push(financial_data_value,tostring(GRAHAM_NUMBERS_FY[0]))
    array.push(financial_data_value,tostring(INTERST_COVER_FY[0]))
    array.push(financial_data_value,tostring(INVENT_TO_REVENUE_FY[0]))
    array.push(financial_data_value,tostring(INVENT_TURNOVER_FY[0]))
    array.push(financial_data_value,tostring(LT_DEBT_ASSET_FY[0]))
    array.push(financial_data_value,tostring(NCAVPS_RATIO_FY[0]))
    array.push(financial_data_value,tostring(NET_INCOME_MGN_ONE_YEAR_GROWTH_FY[0]))
    array.push(financial_data_value,tostring(NET_INCOME_PER_EMPLOYEE_FY[0]))
    array.push(financial_data_value,tostring(NUMBER_OF_EMPLOYEES_FY[0]))
    array.push(financial_data_value,tostring(OPERATING_MARGIN_FY[0]))
    array.push(financial_data_value,tostring(QUALITY_RATIO_FY[0]))
    array.push(financial_data_value,tostring(QUICK_RATIO_FY[0]))
    array.push(financial_data_value,tostring(RETURN_ON_EQUITY_FY[0]))
    array.push(financial_data_value,tostring(RETURN_TANG_ASSET_FY[0]))
    array.push(financial_data_value,tostring(RETURN_TANG_EQUITY_FY[0]))
    array.push(financial_data_value,tostring(REVENUE_ONE_YEAR_GROWTH_FY[0]))
    
    
    var label_text = " 【4 比率(1/2)(Ratios)】\n"
    for i=0 to array.size(financial_data_value)-1
        label_text := label_text + array.get(financial_data_description,i)+"\t\t:\t\t"
        label_text := label_text + array.get(financial_data_value,i)+"\n"
    
    var label l = na
    l := label.new( bar_index, 0,
     yloc=yloc.price, style=label.style_label_right,
     color=color.green,textcolor=color.white,textalign=text.align_left,size=size.large,
     text=label_text )
         
    

【4 比率(2/2)(Ratios)】

サンプル画像

f:id:kabuist:20210109212044p:plain

コード
//@version=4
// finnancialデータを一覧で確認するスクリプト
// 【4 比率(2/2)(Ratios)】

study("WR_FinancialDataList_to_Ratios2")

// 登録一覧
REVENUE_PER_EMPLOYEE_FY=financial(syminfo.tickerid,"REVENUE_PER_EMPLOYEE", "FY")
ROA_PERC_FY=financial(syminfo.tickerid,"ROA_PERC", "FY")
ROE_ADJUST_FY=financial(syminfo.tickerid,"ROE_ADJUST", "FY")
ROIC_PERC_FY=financial(syminfo.tickerid,"ROIC_PERC", "FY")
SALES_ESTIMATES_FY=financial(syminfo.tickerid,"SALES_ESTIMATES", "FY")
SHARE_BUYBACK_RATIO_FY=financial(syminfo.tickerid,"SHARE_BUYBACK_RATIO", "FY")
SLOAN_RATIO_FY=financial(syminfo.tickerid,"SLOAN_RATIO", "FY")
TANGIBLE_COMMON_EQUITY_RATIO_FY=financial(syminfo.tickerid,"TANGIBLE_COMMON_EQUITY_RATIO", "FY")


//最後の足で描写処理
if (barstate.islast)
    financial_data_value = array.new_string(0)
    financial_data_description = array.new_string(0)
    // -------------
    array.push(financial_data_description,"従業員一人当たりの収入     REVENUE_PER_EMPLOYEE")
    array.push(financial_data_description,"総資産経常利益率     ROA_PERC")
    array.push(financial_data_description,"ROE % 簿価修正後     ROE_ADJUST")
    array.push(financial_data_description,"ROIC     ROIC_PERC")
    array.push(financial_data_description,"収入の見積もり     SALES_ESTIMATES")
    array.push(financial_data_description,"自己株式取得率     SHARE_BUYBACK_RATIO")
    array.push(financial_data_description,"スローン比率     SLOAN_RATIO")
    array.push(financial_data_description,"有形 自己資本比率     TANGIBLE_COMMON_EQUITY_RATIO")
    
    // -------------
    
    array.push(financial_data_value,tostring(REVENUE_PER_EMPLOYEE_FY[0]))
    array.push(financial_data_value,tostring(ROA_PERC_FY[0]))
    array.push(financial_data_value,tostring(ROE_ADJUST_FY[0]))
    array.push(financial_data_value,tostring(ROIC_PERC_FY[0]))
    array.push(financial_data_value,tostring(SALES_ESTIMATES_FY[0]))
    array.push(financial_data_value,tostring(SHARE_BUYBACK_RATIO_FY[0]))
    array.push(financial_data_value,tostring(SLOAN_RATIO_FY[0]))
    array.push(financial_data_value,tostring(TANGIBLE_COMMON_EQUITY_RATIO_FY[0]))
    
    
    var label_text = " 【4 比率(2/2)(Ratios)】\n"
    for i=0 to array.size(financial_data_value)-1
        label_text := label_text + array.get(financial_data_description,i)+"\t\t:\t\t"
        label_text := label_text + array.get(financial_data_value,i)+"\n"
    
    var label l = na
    l := label.new( bar_index, 0,
     yloc=yloc.price, style=label.style_label_right,
     color=color.green,textcolor=color.white,textalign=text.align_left,size=size.large,
     text=label_text )
         
    

GASで作るスキャナ(スクリーニング)

スキャナとは。

トレステ時代に活用していたツールで、全銘柄から条件に合致する銘柄を抽出する機能です。
似たようなものとして、証券会社等で採用されている”スクリーニング”がありますが、これらでは細かい条件は設定できませんよね。
出来高がこんな形」かつ「ローソク足がこの形」等は個別にチャートを見なければわかりません。
また、tradingview等で作成したオリジナルの指標等での判定も個別ではアラームを設定ができますが、全銘柄では(現時点では)抽出不可能です。(実装予定はあるらしいです。早く!)

GASで作成

チャートを一つずつ確認するのは、めんど..効率を求める我々リーマンには難しいということで、作りました。
Googleスプレッドシートスクリプト(エクセルのVBAみたいなもの)を組み込むことで、自分オリジナルの条件にて銘柄を絞り込みます。Google Apps Script (以降省略:GAS)を使っています。(プログラムはjavascriptです)

なぜ GASか?

Pythonや他プログラムでも同様のことが可能ですが、あえて制限の多いGASを使用したのは、サーバ不要で常時実行できるためです。
どこからでも使用でき、スマホからでも確認することが可能なため、(忘れやすい)サラリーマンには助かります。

機能

  1. 設定した定時(1800)にデータダウンロード
  2. ダウンロードしたデータを月ごとにjsonファイルとして保存
  3. あらかじめ作成していた抽出条件で全銘柄から抽出
  4. 抽出されたコードについて株探からスクレイピング
  5. 個別の指標データを確認することが可能
  6. 定時刻に銘柄を抽出することも可能。

f:id:kabuist:20201230190733p:plain
スキャナ画面

jsonファイル

株価データはjsonファイルにて月ごとに作成。
当初はスプレッドシートの形式で保存していたが、読み出しに時間がかかるため、以下の構成でjsonファイルを作成。

jsonデータの形

以下のような形で、連想配列を2段としてくみいれています。
{"1301": {
         ”Date”:[”2020-12-28”,"2020-12-25",・・・],
         "close":[2950,2916,・・・],
         "high":[2950,2930,・・・],
         "low":[2910,2903,・・・],
         "open”:[2929,2903,・・・]
},
{"1302": { ・・・・

指標計算<テクニカル>

データを渡すことで、テクニカルの計算配列を返してくれるスクリプトも作りました。
今現在作成しているのは以下です。

noteで公開

noteで公開してみました。  >>勢いで出してみたものの、個別対応が面倒に感じてしまい消しちゃいました(・ω<) テヘペロ.

スクリーニングっ!!@TradingView

TradingViewでスクリーニング

TradingViewはスクリーニングができます。
全銘柄からスクリーニングすることが可能です。
トレステ(スキャナ)のように自作インジケーを用いての検索はできませんが、アップデートで仕上げてくるのではと期待しています。m(__)m f:id:kabuist:20200714221326p:plain

スクリーニング項目

スクリーニング項目は以下!

  • 種別:27項目
  • ファンダメンタル:46項目
  • テクニカル:75項目ぐらい?

組み合わせを使えば詳細に使えそうですが、正直使いこなせるか不安。。。
項目一覧を最後に記載します。

標準設定スクリーナ

標準でもいくつか準備されているよう。
もちろんですけど自分の設定を保存できます

f:id:kabuist:20200715235103p:plain
標準

所感

対応が容易と思われる順(中の人おねがいします)
  • 定義が分からないのもあるのでしっかり説明されていると嬉しいな。
  • 移動平均の設定値とか好きな値に変えたい。
  • ファンダメンタルの数値設定時に他数値を用いて使いたい(営業利益が時価総額の0.1倍以上とか)
  • 自作インジケータの数値を使いたい。

数値の入力方法

値は”M”(Million”ミリオン”)や”B”(Billion”ビリオン”)を使うので、いつもと違うのでわかりづらい!
参考値は下記参照。

数値一覧

表記 日本語
10M 1千万
100M 1億
1B 10億
10B 100億
100B 1000億

項目一覧

種別

  • シンボルタイプ
  • セクター
  • 出来高
  • 時価総額
  • 現在値
  • アフターマーケット出来高
  • アフターマーケット始値
  • アフターマーケット安値
  • アフターマーケット終値
  • アフターマーケット高値
  • プレマーケット出来高
  • プレマーケット始値
  • プレマーケット安値
  • プレマーケット終値
  • プレマーケット高値
  • 出来高 × 価格
  • 取引所
  • 始値
  • 安値
  • 平均の出来高(90日)
  • 平均出来高 (10日)
  • 平均出来高(30日)
  • 平均出来高(60日)
  • 業種
  • 相対ボリューム
  • 高値

    ファンダメンタル

  • PER: 株価収益率 (直近12ヶ月)
  • 基本的1株当たり利益(直近12ヶ月)
  • 従業員数
  • 総債務(直近四半期)
  • 1株当たり利益予想(四半期)
  • 1株当たり配当金(直近四半期)
  • DEレシオ(直近四半期)
  • ROE: 自己資本利益率 (直近12ヶ月)
  • RPE: 従業員一人当たり収益 (直近12ヶ月)
  • CR: 流動比率 (直近四半期)
  • 一株当たり配当金(通期)
  • 企業価値(直近四半期)
  • 企業価値/EBITDA(直近12ヶ月)
  • 営業利益 (直近12ヶ月)
  • 営業権
  • 基本的1株当たり利益(通期)
  • 売上総利益 (直近12ヶ月)
  • 売上総利益(直近四半期)
  • 売上総利益(通期)
  • 希薄化後1株当たり利益(直近12ヶ月)
  • 希薄化後1株当たり利益(直近四半期)
  • 希薄化後1株当たり利益(通期)
  • 当座比率(直近四半期)
  • 当期純利益 (直近12ヶ月)
  • 当期純利益(通期)
  • 投下資本利益率(直近12ヶ月)
  • 支払利息・税金・減価償却・償却控除前利益(直近12ヶ月)
  • 昨年度売上(事業年度)
  • 株主数
  • 株価キャッシュフロー倍率 (直近12ヶ月)
  • 株価売上高倍率(PSR)(TTM)
  • 株価売上高倍率(通期)
  • 株価純資産倍率(直近四半期)
  • 株価純資産倍率(通期)
  • 次回決算発表日
  • 流動資産合計(直近四半期)
  • 浮動株
  • 発行済全株式(直近四半期)
  • 直近決算発表日
  • 税引前利益 (直近12ヶ月)
  • 純有利子負債(直近四半期)
  • 総収益(通期)
  • 総資産(直近四半期)
  • 総資産利益率(直近12ヶ月)
  • 配当利回り(通期)
  • 配当金支払額(通期)

テクニカル

標準スクリーな一覧

  • 時価総額上位ランキング
  • 出来高上位
  • 値上がり上位
  • 値下がり上位
  • 新高値
  • 新安値
  • 52週高値更新
  • 52週安値更新
  • 月間新高値
  • 月間新安値
  • ボラティリティ上位
  • 通常と異なる出来高
  • 買われすぎ
  • 売られすぎ
  • SMA50の上
  • SMA50の下
  • 今週の決算発表

トレステ サービス終了!

f:id:kabuist:20200507185649p:plain
マネックスIR

トレステのサービス終了

お昼休みのTwitterで衝撃のニュースが入りました。
2020年5月7日のマネックス証券のIRにてトレステサービス終了が告知されました。
なにかの冗談かと思いましたが、トレステ公式アカウントからも告知されたため間違いない様です。

info.monex.co.jp

今後

これまでトレステをベースとして投資の勉強を行ってきましたが方針転換が必要になります。
自分が使っているトレステの機能について代替方法を検討していかなきゃですね。
兼業の投資家/基本は日足として検討してみます。

データ取得

株価データをリアルタイムで大量に取得することが可能でしたが、今後は難しくなりそうです。 閉鎖までに過去の株価データについてすべて取得しておこうと思います。 株価データ取得の代替案は以下がぱっと浮かびます。有料のKABU+に手を出してしまいそうw

ファンダデータは証券会社からの取得ツールを既に作っているのでそちらで対応可能ですかね。

チャート

自分の計算データを描写するならトレビュですね。
モバイルアプリもあるので間違いないかと。
ただし、無料の場合はインジケータの表示数に制限が付きます。
外部データの読み込みだけ対応してほしい。

https://jp.tradingview.com/gopro/?share_your_love=kabuist001

トレビュの紹介記事は別記事参照。

kabuist.hatenablog.com

レーダスクリーン

株価データさえあればエクセルでそれなりに作れそうです。 ただ、日足になります。

バックテスト

日足であればイザナミが代用可能です。
作り方が面倒に見えますがこれも慣れですかね。
関数使って計算式も作れるのですが、細かい計算が知る限りできないので、その点は難点かも。
株システムトレードソフトイザナミ

スキャナ

対象銘柄を探すツールですが、スケジュールで自動出力もしてくれる強力なツールでした。
出力したものをtwitterbot化したり、ブログにアップしてたりしてたので、これはツライ。
これもスクレイピングで代用できますが、全銘柄まわすのに時間がかかるので、更新頻度が落ちちゃう(´;Д;`)

最終日まで

トレステの最終日は2020年8月7日(金)とのことで、
結構な短期間ですが、それまでに、データの保存、移管をすませておかなければなりませんね。
とりあえず全銘柄の全足のデータ取得するインジケータ作ります。|出口| λ............トボトボ

Financial 関数公開! @tradingview

financial 関数が公開されました!!

いつかは搭載されるだろうと思っていましたが、意外に早かったです。それだけ要望していた人が多いのでしょう。
本ページには関数に使用する"financial_id"の和訳一覧をおいておきます。
機械翻訳ですので誤りがあるかもしせませんが、その点ご了承ください。

記述方法

financial関数
シンボルの財務系列をリクエストする関数です。

financial(symbol, financial_id, period, gaps) → series[float]

f = financial("NASDAQ:MSFT", "ACCOUNTS_PAYABLE", "FY")
plot(f)

戻り

リクエストされた系列。series[float]です

引数

symbol (string)

シンボル。シンボルはprefix付きで渡す必要があります。
例: "AAPL" ではなく "NASDAQ:AAPL" として。
現在の銘柄を呼び出すには[syminfo.tickerid]を使いましょう。

financial_id (string)

欲しい財務指標のデータのidを入力する必要があります。
以下の表から探してください

period (string)

レポート期間。可能な値は "TTM", "FY", "FQ" です。

gaps (const bool)

リクエストされたデータのマージ方法(リクエストされたデータは自動的にメイン系列 (OHLCデータ) とマージされます)。 デフォルト値は barmerge.gaps_off です。
barmerge.gaps_on - リクエストされたデータは可能なギャップ (na値) とマージされます。
barmerge.gaps_off - リクエストされたデータはギャップなしで連続してマージされ、すべてのギャップは以前の最も近い既存の値で埋められます。

financial_id 一覧

以下のリンクで値確認用のコードを載せましたので、ご参考にしてください。

kabuist.hatenablog.com

損益計算書(Income Statements)

和訳(機械翻訳) Financial Available periods financial_id
税引後 その他収支           After Tax Other Income/Expense FQ, FY AFTER_TAX_OTHER_INCOME
商品の原価 Cost of Goods FQ, FY COST_OF_GOODS
潜在株式調整後1株当たり当期純利益 Diluted Net Income Available to Common Stockholders FQ, FY DILUTED_NET_INCOME
希薄化調整 Dilution Adjustment FQ, FY DILUTION_ADJUSTMENT
非継続事業 Discontinued Operations FQ, FY DISCONTINUED_OPERATIONS
基本EPS Basic EPS FQ, FY, TTM EARNINGS_PER_SHARE_BASIC
潜在株式調整後1株当たり当期純利益 Diluted EPS FQ, FY, TTM EARNINGS_PER_SHARE
EBITDA EBITDA FQ, FY, TTM EBITDA
持分法による投資利益 Equity In Earnings FQ, FY EQUITY_IN_EARNINGS
売上総利益 Gross Profit FQ, FY GROSS_PROFIT
税金 Taxes FQ, FY INCOME_TAX
非支配/少数株主持分 Non-Controlling/Minority interest FQ, FY MINORITY_INTEREST_EXP
非継続事業前の当期純利益 Net Income Before Discontinued Operations FQ, FY NET_INCOME_BEF_DISC_OPER
当期純利益 Net Income FQ, FY NET_INCOME
営業利益 Operating Income FQ, FY OPER_INCOME
営業費用(除くCOGS Operating Expenses (excl. COGS) FQ, FY OPERATING_EXPENSES
その他の営業費用合計 Other Operating Expenses, Total FQ, FY OTHER_OPER_EXPENSE_TOTAL
税引前利益 Pretax Income FQ, FY PRETAX_INCOME
研究開発 Research & Development FQ, FY RESEARCH_AND_DEV
販売費・一般管理費、その他 Selling/General/Admin Expenses, Other FQ, FY SELL_GEN_ADMIN_EXP_OTHER
販売費及び一般管理費、合計 Selling/General/Admin Expenses, Total FQ, FY SELL_GEN_ADMIN_EXP_TOTAL
営業外収益合計 Non-Operating Income, Total FQ, FY TOTAL_NON_OPER_INCOME
営業費用合計 Total Operating Expenses FQ, FY TOTAL_OPER_EXPENSE
総収入 Total Revenue FQ, FY TOTAL_REVENUE

貸借対照表(Balance Sheet)

和訳(機械翻訳) Financial Available periods financial_id
買掛金           Accounts Payable FQ, FY ACCOUNTS_PAYABLE
売掛金-貿易、ネット Accounts Receivable - Trade, Net FQ, FY ACCOUNTS_RECEIVABLES_NET
未払給与 Accrued Payroll FQ, FY ACCRUED_PAYROLL
減価償却累計額合計 Accumulated Depreciation, Total FQ, FY ACCUM_DEPREC_TOTAL
1株当たり純資産額 Book Value Per Share FQ, FY BOOK_VALUE_PER_SHARE
キャピタルリース債務及びオペレーティングリース債務 Capital and Operating Lease Obligations FQ, FY CAPITAL_OPERATING_LEASE_OBLIGATIONS
現金及び現金同等物 Cash & Equivalents FQ, FY CASH_N_EQUIVALENTS
現金及び短期投資 Cash and Short Term Investments FQ, FY CASH_N_SHORT_TERM_INVEST
資本金・総資産 Common Equity, Total FQ, FY COMMON_EQUITY_TOTAL
長期借入金・キャピタル・リース取引の当座預金残高 Current Port. of LT Debt/Capital Leases FQ, FY CURRENT_PORT_DEBT_CAPITAL_LEASES
繰延税金資産 Deferred Income, Current FQ, FY DEFERRED_INCOME_CURRENT
繰延収益、非流動 Deferred Income, Non-Current FQ, FY DEFERRED_INCOME_NON_CURRENT
繰延税金資産 Deferred Tax Assets FQ, FY DEFERRED_TAX_ASSESTS
繰延税金負債 Deferred Tax Liabilities FQ, FY DEFERRED_TAX_LIABILITIES
配当金支払額 Dividends Payable FY DIVIDENDS_PAYABLE
のれん・純額 Goodwill, Net FQ, FY GOODWILL
法人税等の支払額 Income Tax Payable FQ, FY INCOME_TAX_PAYABLE
無形固定資産 Net Intangible Assets FQ, FY INTANGIBLES_NET
棚卸資産-完成品 Inventories - Finished Goods FQ, FY INVENTORY_FINISHED_GOODS
たな卸資産-未払賃金・その他 Inventories - Progress Payments & Other FQ, FY INVENTORY_PROGRESS_PAYMENTS
棚卸資産-原材料 Inventories - Raw Materials FQ, FY INVENTORY_RAW_MATERIALS
棚卸資産-仕掛品 Inventories - Work In Progress FQ, FY INVENTORY_WORK_IN_PROGRESS
連結子会社への投資 Investments in Unconsolidated Subsidiaries FQ, FY INVESTMENTS_IN_UNCONCSOLIDATE
リース債務を除く長期借入金 Long Term Debt Excluding Lease Liabilities FQ, FY LONG_TERM_DEBT_EXCL_CAPITAL_LEASE
長期借入金 Long Term Debt FQ, FY LONG_TERM_DEBT
長期投資 Long Term Investments FQ, FY LONG_TERM_INVESTMENTS
長期受取手形 Note Receivable - Long Term FQ, FY LONG_TERM_NOTE_RECEIVABLE
その他の長期資産合計 Other Long Term Assets, Total FQ, FY LONG_TERM_OTHER_ASSETS_TOTAL
少数株主持分 Minority Interest FQ, FY MINORITY_INTEREST
その他の普通株式 Other Common Equity FQ, FY OTHER_COMMON_EQUITY
その他の流動資産合計 Other Current Assets, Total FQ, FY OTHER_CURRENT_ASSETS_TOTAL
その他の流動負債 Other Current Liabilities FQ, FY OTHER_CURRENT_LIABILITIES
その他の無形固定資産 Net Other Intangibles FQ, FY OTHER_INTANGIBLES_NET
その他の投資 Other Investments FQ, FY OTHER_INVESTMENTS
その他の負債合計 Other Liabilities, Total FQ, FY OTHER_LIABILITIES_TOTAL
その他の債権 Other Receivables FQ, FY OTHER_RECEIVABLES
資本金の支払い Paid in Capital FQ, FY PAID_IN_CAPITAL
有形固定資産合計 Gross Property/Plant/Equipment FQ, FY PPE_TOTAL_GROSS
有形固定資産純額 Net Property/Plant/Equipment FQ, FY PPE_TOTAL_NET
優先株式貸借対照表計上額 Preferred Stock, Carrying Value FQ, FY PREFERRED_STOCK_CARRYING_VALUE
前払い費用 Prepaid Expenses FQ, FY PREPAID_EXPENSES
リスク引当金繰入額 Provision for Risks & Charge FQ, FY PROVISION_F_RISKS
利益剰余金 Retained Earnings FQ, FY RETAINED_EARNINGS
短期借入金(1年以内返済予定の長期借入金を除く Short Term Debt excl. Current Portion of LT Debt FQ, FY SHORT_TERM_DEBT_EXCL_CURRENT_PORT
短期借入金 Short Term Debt FQ, FY SHORT_TERM_DEBT
短期投資 Short Term Investments FQ, FY SHORT_TERM_INVEST
株主資本 Shareholders' Equity FQ, FY SHRHLDRS_EQUITY
総資産 Total Assets FQ, FY TOTAL_ASSETS
流動資産合計 Total Current Assets FQ, FY TOTAL_CURRENT_ASSETS
流動負債合計 Total Current Liabilities FQ, FY TOTAL_CURRENT_LIABILITIES
負債総額 Total Debt FQ, FY TOTAL_DEBT
純資産の部 Total Equity FQ, FY TOTAL_EQUITY
棚卸資産合計 Total Inventory FQ, FY TOTAL_INVENTORY
負債の部 Total Liabilities FQ, FY TOTAL_LIABILITIES
負債・株主資本合計 Total Liabilities & Shareholders' equities FQ, FY TOTAL_LIABILITIES_SHRHLDRS_EQUITY
固定資産の部) Ⅰ 流動資産合計 Total Non-Current Assets FQ, FY TOTAL_NON_CURRENT_ASSETS
固定負債の部) Ⅰ 流動負債の部 Total Non-Current Liabilities FQ, FY TOTAL_NON_CURRENT_LIABILITIES
売上債権合計(純額) (単位:百万円 Total Receivables, Net FQ, FY TOTAL_RECEIVABLES_NET
発行済株式総数 Total Common Shares Outstanding FQ, FY TOTAL_SHARES_OUTSTANDING

キャッシュフロー(Cash Flow)

和訳(機械翻訳) Financial Available periods financial_id
設備投資-固定資産           Capital Expenditures - Fixed Assets FQ, FY CAPITAL_EXPENDITURES_FIXED_ASSETS
設備投資額 Capital Expenditures FQ, FY CAPITAL_EXPENDITURES
設備投資-その他の資産 Capital Expenditures - Other Assets FQ, FY CAPITAL_EXPENDITURES_OTHER_ASSETS
財務活動によるキャッシュ・フロー Cash From Financing Activities FQ, FY CASH_F_FINANCING_ACTIVITIES
投資活動によるキャッシュ・フロー Cash From Investing Activities FQ, FY CASH_F_INVESTING_ACTIVITIES
営業活動によるキャッシュ・フロー Cash From Operating Activities FQ, FY CASH_F_OPERATING_ACTIVITIES
繰延税金資産キャッシュ・フロー Deferred Taxes (Cash Flow) FQ, FY CASH_FLOW_DEFERRED_TAXES
減価償却費(キャッシュフロー Depreciation & Amortization (Cash Flow) FQ, FY CASH_FLOW_DEPRECATION_N_AMORTIZATION
買掛金の増減額 Change in Accounts Payable FQ, FY CHANGE_IN_ACCOUNTS_PAYABLE
売掛金の増減額 Change in Accounts Receivable FQ, FY CHANGE_IN_ACCOUNTS_RECEIVABLE
未払費用の増減 Change in Accrued Expenses FQ, FY CHANGE_IN_ACCRUED_EXPENSES
棚卸資産の増減 Change in Inventories FQ, FY CHANGE_IN_INVENTORIES
その他の資産・負債の増減 Change in Other Assets/Liabilities FQ, FY CHANGE_IN_OTHER_ASSETS
未払法人税等の増減額 Change in Taxes Payable FQ, FY CHANGE_IN_TAXES_PAYABLE
運転資金の推移 Changes in Working Capital FQ, FY CHANGES_IN_WORKING_CAPITAL
フリーキャッシュフロー Free Cash Flow FQ, FY FREE_CASH_FLOW
営業活動によるキャッシュ・フロー Funds From Operations FQ, FY FUNDS_F_OPERATIONS
借入金の発行(消却)純額 Issuance (Retirement) of Debt, Net FQ, FY ISSUANCE_OF_DEBT_NET
長期借入金の発行(償還)について Issuance (Retirement) of Long Term Debt FQ, FY ISSUANCE_OF_LONG_TERM_DEBT
その他の債務の発行(除却) Issuance (Retirement) of Other Debt FQ, FY ISSUANCE_OF_OTHER_DEBT
短期借入金の発行(消却)について Issuance (Retirement) of Short Term Debt FQ, FY ISSUANCE_OF_SHORT_TERM_DEBT
株式の発行(消却)純額 Issuance (Retirement) of Stock, Net FQ, FY ISSUANCE_OF_STOCK_NET
当期純利益キャッシュフロー Net Income (Cash Flow) FQ, FY NET_INCOME_STARTING_LINE
現金以外の項目 Non-Cash Items FQ, FY NON_CASH_ITEMS
その他の財務活動によるキャッシュ・フロー Other Financing Cash Flow Items, Total FQ, FY OTHER_FINANCING_CASH_FLOW_ITEMS_TOTAL
財務活動によるキャッシュ・フロー Financing Activities - Other Sources FQ, FY OTHER_FINANCING_CASH_FLOW_SOURCES
財務活動によるキャッシュ・フロー Financing Activities - Other Uses FQ, FY OTHER_FINANCING_CASH_FLOW_USES
その他の投資キャッシュ・フロー項目 Other Investing Cash Flow Items, Total FQ, FY OTHER_INVESTING_CASH_FLOW_ITEMS_TOTAL
投資活動によるキャッシュ・フロー Investing Activities - Other Sources FQ, FY OTHER_INVESTING_CASH_FLOW_SOURCES
投資活動によるキャッシュ・フロー Investing Activities - Other Uses FQ, FY OTHER_INVESTING_CASH_FLOW_USES
事業譲受け Purchase/Acquisition of Business FQ, FY PURCHASE_OF_BUSINESS
投資先の購入 Purchase of Investments FQ, FY PURCHASE_OF_INVESTMENTS
普通株式優先株式の取得 Repurchase of Common & Preferred Stock FQ, FY PURCHASE_OF_STOCK
事業の売買、ネット Purchase/Sale of Business, Net FQ, FY PURCHASE_SALE_BUSINESS
投資有価証券の取得・売却(純額 Purchase/Sale of Investments, Net FQ, FY PURCHASE_SALE_INVESTMENTS
普通株式優先株式の売却 Sale of Common & Preferred Stock FQ, FY SALE_OF_STOCK
固定資産・事業の売却 Sale of Fixed Assets & Businesses FQ, FY SALES_OF_BUSINESS
投資有価証券の売却・償還時期 Sale/Maturity of Investments FQ, FY SALES_OF_INVESTMENTS
配当金総額 Total Cash Dividends Paid FQ, FY TOTAL_CASH_DIVIDENDS_PAID
非日常的なアイテム Extraordinary Item FQ, FY TOTAL_EXTRA_ITEMS

比率(Ratios)

和訳(機械翻訳) Financial Available periods financial_id
引当金繰入額           Accruals FQ, FY ACCRUALS_RATIO
資産回転率 Asset Turnover FQ, FY ASSET_TURNOVER
1株当たり純資産額 Tangible Book Value Per Share FQ, FY BOOK_TANGIBLE_PER_SHARE
キャッシュ・デビット Cash-to-Debt FQ, FY CASH_TO_DEBT
売上高に対するCOGSの比率 COGS-to-Revenue FQ, FY COGS_TO_REVENUE
現在の比率 Current Ratio FQ, FY CURRENT_RATIO
卓越した日の販売 Days Sales Outstanding FQ, FY DAY_SALES_OUT
日の在庫 Days Inventory FQ, FY DAYS_INVENT
支払可能日数 Days Payable FQ, FY DAYS_PAY
有利子負債比率 Debt-to-Asset FQ, FY DEBT_TO_ASSET
有利子負債対EBITDA Debt-to-EBITDA FQ, FY DEBT_TO_EBITDA
有利子負債比率 Debt to Equity Ratio FQ, FY DEBT_TO_EQUITY
有利子負債比率 Debt-to-Revenue FQ, FY DEBT_TO_REVENUE
EPS推定値 EPS Estimates FQ, FY EARNINGS_ESTIMATE
EPSベーシック1年成長率 EPS Basic One Year Growth FQ, FY EARNINGS_PER_SHARE_BASIC_ONE_YEAR_GROWTH
1株当たり当期純利益 潜在株式調整後1株当たり当期純利益 EPS Diluted One Year Growth FQ, FY EARNINGS_PER_SHARE_DILUTED_ONE_YEAR_GROWTH
EBITDAマージン EBITDA Margin FQ, FY EBITDA_MARGIN
有利子負債の実効金利 Effective Interest Rate on Debt % FQ, FY EF_INTEREST_DEBT
企業価値 Enterprise Value FQ, FY ENTERPRISE_VALUE
自己資本比率 Equity-to-Asset FQ, FY EQUITY_TO_ASSET
EV-toEBIT EV-to-EBIT FQ, FY EV_EBIT
EV-toEBITDA EV-to-EBITDA FQ, FY EV_EBITDA
EV対レベニュー EV-to-Revenue FQ, FY EV_REVENUE
のれんと資産の関係 Goodwill-to-Asset FQ, FY GOODWILL_TO_ASSET
グラハムの番号 Graham's Number FQ, FY GRAHAM_NUMBERS
インタレスカバレッジ Interest Coverage FQ, FY INTERST_COVER
たな卸資産売上高 Inventory-to-Revenue FQ, FY INVENT_TO_REVENUE
在庫回転率 Inventory Turnover FQ, FY INVENT_TURNOVER
総資産経常利益率 LT-Debt-to-Total-Asset FQ, FY LT_DEBT_ASSET
1株当たり純資産額 Net Current Asset Value Per Share FQ, FY NCAVPS_RATIO
ネットマージン Net Margin FQ, FY NET_INCOME_MGN_ONE_YEAR_GROWTH
従業員一人当たり当期純利益 Net Income Per Employee FY NET_INCOME_PER_EMPLOYEE
従業員数 Total Employees FY NUMBER_OF_EMPLOYEES
営業利益率 Operating Margin FQ, FY OPERATING_MARGIN
品質比 Quality Ratio FQ, FY QUALITY_RATIO
クイックレシオ Quick Ratio FQ, FY QUICK_RATIO
自己資本利益率 Return on Equity FQ, FY RETURN_ON_EQUITY
有形固定資産利益率 Return-on-Tangible-Asset FQ, FY RETURN_TANG_ASSET
有形株主資本利益率 Return-on-Tangible-Equity FQ, FY RETURN_TANG_EQUITY
収入 1年間の成長率 Revenue One Year Growth FQ, FY REVENUE_ONE_YEAR_GROWTH
従業員一人当たりの収入 Revenue Per Employee FY REVENUE_PER_EMPLOYEE
総資産経常利益率 ROA % FQ, FY ROA_PERC
ROE % 簿価修正後 ROE % Adjusted to Book Value FQ, FY ROE_ADJUST
ROIC ROIC % FQ, FY ROIC_PERC
収入の見積もり Revenue Estimates FQ, FY SALES_ESTIMATES
自己株式取得率 Shares Buyback Ratio % FQ, FY SHARE_BUYBACK_RATIO
スローン比率 Sloan Ratio % FQ, FY SLOAN_RATIO
有形自己資本比率 Tangible Common Equity Ratio FQ, FY TANGIBLE_COMMON_EQUITY_RATIO

移動平均線のパネル表示@TradingView

目次

概要

移動平均線の表示(6種)と移動平均の価格を高値順にパネル表示を行うスクリプトです。

作成意図

  • たくさん出しすぎて色が分からくなるので少しでも関係性(順番)が見えるように。
  • 急いで指値注文等をする際にぱっと数字が分かるように。

機能

工夫点

  • パネルの表示計算は”barstate.islast”を条件とし、最終足のみで計算とし無駄カット
  • ただし上記の場合"highest( high, 20)"の計算が現在足でしか計算しなかったためif文の外にだした。(これには結構ハマった)
  • パネルの色表示を標準色から選べる様にした

改善点

  • 分足を使用した際に未来足の位置に配置する方法が不明
  • 移動平均に合わせてパネル内の文字色も変更したいが、inputの色を取得する方法がない。(と思う)

設定項目

コード

// This source code is subject to the terms of the Mozilla Public License 2.0 at https://mozilla.org/MPL/2.0/
// © kabuist001

//@version=4
study("WR_Moving Average Panel", shorttitle="WR_MV_Panel", overlay=true )

// 
// MA 移動平均
// 

MA_type = input(defval="sma", title="MAtype" , type=input.string,options=["sma","ema","wma"])
len1 = input(5, title="Length_1")
len2 = input(10, title="Length_2")
len3 = input(25, title="Length_3")
len4 = input(75, title="Length_4")
len5 = input(100, title="Length_5")
len6 = input(200, title="Length_6")


ma1 = sma(close ,len1)
ma2 = sma(close ,len2)
ma3 = sma(close ,len3)
ma4 = sma(close ,len4)
ma5 = sma(close ,len5)
ma6 = sma(close ,len6)
if MA_type=="ema" 
    ma1 := ema(close ,len1)
    ma2 := ema(close ,len2)
    ma3 := ema(close ,len3)
    ma4 := ema(close ,len4)
    ma5 := ema(close ,len5)
    ma6 := ema(close ,len6)
else
    if MA_type=="wma"
        ma1 := wma(close ,len1)
        ma2 := wma(close ,len2)
        ma3 := wma(close ,len3)
        ma4 := wma(close ,len4)
        ma5 := wma(close ,len5)
        ma6 := wma(close ,len6)

plot(ma1, color=color.red, linewidth=2, title="Length1平均線")
plot(ma2, color=color.yellow, linewidth=2, title="Length2平均線")
plot(ma3, color=color.blue, linewidth=2, title="Length3平均線")
plot(ma4, color=color.purple, linewidth=2, title="Length4平均線")
plot(ma5, color=color.lime, linewidth=2, title="Length5平均線")
plot(ma6, color=color.green, linewidth=2, title="Length6平均線")

    
    
// 
// パネル作成
// 
info_on = input(type = input.bool, title = "infoパネルon-off", defval=true) 
info_x = input(type = input.integer, title = "infoパネル横位置(標準:5本先)", defval = 5) 
info_y = input(type = input.integer, title = "infoパネル縦位置(標準:20足中の高値)", defval = 20)

user_color = input(title="infoパネル色", defval="lime", options=["white", "black", "aqua", "blue", "fuchsia", "gray", "green", "lime", "maroon", "navy", "olive", "orange", "purple", "red", "silver", "teal", "yellow"])
var Panel_color = user_color == "aqua" ? color.new(color.aqua,30) : user_color == "black" ? color.new(color.black,30) : user_color == "blue" ? color.new(color.blue,30) : user_color == "fuchsia" ? color.new(color.fuchsia,30) : user_color == "gray" ? color.new(color.gray,30) : user_color == "green" ? color.new(color.green,30) : user_color == "lime" ? color.new(color.lime,30) : user_color == "maroon" ? color.new(color.maroon,30) : user_color == "navy" ? color.new(color.navy,30) : user_color == "olive" ? color.new(color.olive,30) : user_color == "orange" ? color.new(color.orange,30) : user_color == "purple" ? color.new(color.purple,30) : user_color == "red" ? color.new(color.red,30) : user_color == "silver" ? color.new(color.silver,30) : user_color == "teal" ? color.new(color.teal,30) : user_color == "white" ? color.new(color.white,30) : user_color == "yellow" ? color.new(color.yellow,30) : color.new(color.black,30)


//パネルの表示高さ
yloc_value=highest(high,info_y)

//最終足のみで並べ替え実施。
if barstate.islast
    
    //初期設定
    no1=ma1
    no2=ma2
    no3=ma3
    no4=ma4
    no5=ma5
    no6=ma6
    no7=close
    temp=0.0
    
    // no1決定
    if no7 > no6
        temp:=no6
        no6:=no7
        no7:=temp
    if no6 > no5
        temp:=no5
        no5:=no6
        no6:=temp
    if no5 > no4
        temp:=no4
        no4:=no5
        no5:=temp
    if no4 > no3
        temp:=no3
        no3:=no4
        no4:=temp
    if no3 > no2
        temp:=no2
        no2:=no3
        no3:=temp
    if no2 > no1
        temp:=no1
        no1:=no2
        no2:=temp
        
    //no2
    if no7 > no6
        temp:=no6
        no6:=no7
        no7:=temp
    if no6 > no5
        temp:=no5
        no5:=no6
        no6:=temp
    if no5 > no4
        temp:=no4
        no4:=no5
        no5:=temp
    if no4 > no3
        temp:=no3
        no3:=no4
        no4:=temp
    if no3 > no2
        temp:=no2
        no2:=no3
        no3:=temp
    
    //no3
    if no7 > no6
        temp:=no6
        no6:=no7
        no7:=temp
    if no6 > no5
        temp:=no5
        no5:=no6
        no6:=temp
    if no5 > no4
        temp:=no4
        no4:=no5
        no5:=temp
    if no4 > no3
        temp:=no3
        no3:=no4
        no4:=temp
        
    //no4
    if no7 > no6
        temp:=no6
        no6:=no7
        no7:=temp
    if no6 > no5
        temp:=no5
        no5:=no6
        no6:=temp
    if no5 > no4
        temp:=no4
        no4:=no5
        no5:=temp
    
    //no5
    if no7 > no6
        temp:=no6
        no6:=no7
        no7:=temp
    if no6 > no5
        temp:=no5
        no5:=no6
        no6:=temp
    
    // no6-no7
    if no7 > no6
        temp:=no6
        no6:=no7
        no7:=temp
    
    
    no1_name= no1 == ma1 ? tostring(round(len1))+"MA : "+tostring(round(no1)) :no1 == ma2 ? tostring(round(len2))+"MA : "+tostring(round(no1)) :  no1 == ma3 ? tostring(round(len3))+"MA : "+tostring(round(no1)) : no1 == ma4 ? tostring(round(len4))+"MA : "+tostring(round(no1)) : no1 == ma5 ? tostring(round(len5))+"MA : "+tostring(round(no1)) : no1 == ma6 ? tostring(round(len6))+"MA : "+tostring(round(no1)) : no1 == close ? "--now--" : "?"
    no2_name= no2 == ma1 ? tostring(round(len1))+"MA : "+tostring(round(no2)) :no2 == ma2 ? tostring(round(len2))+"MA : "+tostring(round(no2)) :  no2 == ma3 ? tostring(round(len3))+"MA : "+tostring(round(no2)) : no2 == ma4 ? tostring(round(len4))+"MA : "+tostring(round(no2)) : no2 == ma5 ? tostring(round(len5))+"MA : "+tostring(round(no2)) : no2 == ma6 ? tostring(round(len6))+"MA : "+tostring(round(no2)) : no2 == close ? "--now--" : "?"
    no3_name= no3 == ma1 ? tostring(round(len1))+"MA : "+tostring(round(no3)) :no3 == ma2 ? tostring(round(len2))+"MA : "+tostring(round(no3)) :  no3 == ma3 ? tostring(round(len3))+"MA : "+tostring(round(no3)) : no3 == ma4 ? tostring(round(len4))+"MA : "+tostring(round(no3)) : no3 == ma5 ? tostring(round(len5))+"MA : "+tostring(round(no3)) : no3 == ma6 ? tostring(round(len6))+"MA : "+tostring(round(no3)) : no3 == close ? "--now--" : "?"
    no4_name= no4 == ma1 ? tostring(round(len1))+"MA : "+tostring(round(no4)) :no4 == ma2 ? tostring(round(len2))+"MA : "+tostring(round(no4)) :  no4 == ma3 ? tostring(round(len3))+"MA : "+tostring(round(no4)) : no4 == ma4 ? tostring(round(len4))+"MA : "+tostring(round(no4)) : no4 == ma5 ? tostring(round(len5))+"MA : "+tostring(round(no4)) : no4 == ma6 ? tostring(round(len6))+"MA : "+tostring(round(no4)) : no4 == close ? "--now--" : "?"
    no5_name= no5 == ma1 ? tostring(round(len1))+"MA : "+tostring(round(no5)) :no5 == ma2 ? tostring(round(len2))+"MA : "+tostring(round(no5)) :  no5 == ma3 ? tostring(round(len3))+"MA : "+tostring(round(no5)) : no5 == ma4 ? tostring(round(len4))+"MA : "+tostring(round(no5)) : no5 == ma5 ? tostring(round(len5))+"MA : "+tostring(round(no5)) : no5 == ma6 ? tostring(round(len6))+"MA : "+tostring(round(no5)) : no5 == close ? "--now--" : "?"
    no6_name= no6 == ma1 ? tostring(round(len1))+"MA : "+tostring(round(no6)) :no6 == ma2 ? tostring(round(len2))+"MA : "+tostring(round(no6)) :  no6 == ma3 ? tostring(round(len3))+"MA : "+tostring(round(no6)) : no6 == ma4 ? tostring(round(len4))+"MA : "+tostring(round(no6)) : no6 == ma5 ? tostring(round(len5))+"MA : "+tostring(round(no6)) : no6 == ma6 ? tostring(round(len6))+"MA : "+tostring(round(no6)) : no6 == close ? "--now--" : "?"
    no7_name= no7 == ma1 ? tostring(round(len1))+"MA : "+tostring(round(no7)) :no7 == ma2 ? tostring(round(len2))+"MA : "+tostring(round(no7)) :  no7 == ma3 ? tostring(round(len3))+"MA : "+tostring(round(no7)) : no7 == ma4 ? tostring(round(len4))+"MA : "+tostring(round(no7)) : no7 == ma5 ? tostring(round(len5))+"MA : "+tostring(round(no7)) : no7 == ma6 ? tostring(round(len6))+"MA : "+tostring(round(no7)) : no7 == close ? "--now--" : "?"
    
    dt = time - time[1] 
    
    
    var label l = na
    
    label.delete(l)
    if info_on==true
        l := label.new( time+info_x*dt, yloc_value,
         xloc=xloc.bar_time, yloc=yloc.price, style=label.style_labeldown,
         color=Panel_color,textcolor=color.white,
         text="MV Panel\n"
         +no1_name+"\n"
         +no2_name+"\n"
         +no3_name+"\n"
         +no4_name+"\n"
         +no5_name+"\n"
         +no6_name+"\n"
         +no7_name
         )
     

色、ラベル、ラインの見本@TradingView

色、ラベル、ライン

いつも調べてる気がするので、メモとして記述します。 - TradingViewの変数として登録されているカラー変数 - ラベル(label)の種類とその形 - ライン(line)の種類とその形

color.xxxで色指定します。 黒背景と、白背景でのサンプルを置いておきます。

一覧

カラー変数 カラーコード
color.aqua #00BCD4
color.blue #2196F3
color.teal #00897B
color.lime #00E676
color.green #4CAF50
color.gray #787B86
color.silver #B2B5BE
color.white #FFFFFF
color.fuchsia #E040FB
color.purple #9C27B0
color.maroon #880E4F
color.black #363A45
color.navy #311B92
color.olive #808000
color.orange #FF9800
color.yellow #FFEB3B
color.red #FF5252

ラベル

ラベルの種類(style)です。
以下にて設定が可能。詳しくは参考サイト参照。

label.new(x, y, text, xloc, yloc, color, style, textcolor, size)

一覧

ラベル 所感
label.style_none 図形なし
label.style_xcross ばつ印
label.style_cross 十字
label.style_triangleup 三角
label.style_triangledown 三角の上下反転
label.style_flag 旗マーク
label.style_circle
label.style_arrowup 上矢印(見本小さすぎ)
label.style_arrowdown 下矢印(見本小さすぎ)
label.style_labelup 上向きの吹き出し
label.style_labeldown 下向きの吹き出し
label.style_square 四角
label.style_diamond ダイヤ

ライン

ラインの種類(style)です。
以下にて設定が可能。詳しくは参考サイト参照。

line.new(x1, y1, x2, y2, xloc, extend, color, style, width)

一覧

ライン 所感
line.style_solid 単純な線
line.style_dotted 細い点線
line.style_dashed 破線
line.style_arrow_left 左(x2からx1)への矢印
line.style_arrow_right 右(x1からx2)への矢印
line.style_arrow_both 両方の矢印

参考サイト

v4のユーザマニュアルに詳しく乗ってます(´・∀・`) www.tradingview.com

参考コード

役に立つことは無いと思いますが、画像作成用のコード置いておきます。

//@version=4
study("study_line")

//記述設定
color_test = false
label_draw = false
line_draw = true


var int V1 = na
var int V2 = na
var int V3 = na
var int V4 = na
var int V5 = na
var int V6 = na
var int V7 = na
var int V8 = na
var int V9 = na
var int V10 = na
var int V11 = na
var int V12 = na
var int V13 = na
var int V14 = na
var int V15 = na
var int V16 = na
var int V17 = na


if color_test
    V1 := 170
    V2 := 160
    V3 := 150
    V4 := 140
    V5 := 130
    V6 := 120
    V7 := 110
    V8 := 100
    V9 := 90
    V10 := 80
    V11 := 70
    V12 := 60
    V13 := 50
    V14 := 40
    V15 := 30
    V16 := 20
    V17 := 10


plot(V1, title='color.aqua', color=color.aqua, linewidth=20)
plot(V2, title='color.blue', color=color.blue, linewidth=20)
plot(V3, title='color.teal', color=color.teal, linewidth=20)
plot(V4, title='color.lime', color=color.lime, linewidth=20)
plot(V5, title='color.green', color=color.green, linewidth=20)
plot(V6, title='color.gray', color=color.gray, linewidth=20)
plot(V7, title='color.silver', color=color.silver, linewidth=20)
plot(V8, title='color.white', color=color.white, linewidth=20)
plot(V9, title='color.fuchsia', color=color.fuchsia, linewidth=20)
plot(V10, title='color.purple', color=color.purple, linewidth=20)
plot(V11, title='color.maroon', color=color.maroon, linewidth=20)
plot(V12, title='color.black', color=color.black, linewidth=20)
plot(V13, title='color.navy', color=color.navy, linewidth=20)
plot(V14, title='color.olive', color=color.olive, linewidth=20)
plot(V15, title='color.orange', color=color.orange, linewidth=20)
plot(V16, title='color.yellow', color=color.yellow, linewidth=20)
plot(V17, title='color.red', color=color.red, linewidth=20)


if barstate.islast and label_draw
    text_color_set= color.white
    var label1 = label.new(bar_index , 260, text="テスト",textcolor=text_color_set, style=label.style_none)
    var label2 = label.new(bar_index , 240, text="テスト",textcolor=text_color_set, style=label.style_xcross)
    var label3 = label.new(bar_index , 220, text="テスト",textcolor=text_color_set, style=label.style_cross)
    var label4 = label.new(bar_index , 200, text="テスト",textcolor=text_color_set, style=label.style_triangleup)
    var label5 = label.new(bar_index , 180, text="テスト",textcolor=text_color_set, style=label.style_triangledown)
    var label6 = label.new(bar_index , 160, text="テスト",textcolor=text_color_set, style=label.style_flag)
    var label7 = label.new(bar_index , 140, text="テスト",textcolor=text_color_set, style=label.style_circle)
    var label8 = label.new(bar_index , 120, text="テスト",textcolor=text_color_set, style=label.style_arrowup)
    var label9 = label.new(bar_index , 100, text="テスト",textcolor=text_color_set, style=label.style_arrowdown)
    var label10 = label.new(bar_index , 80, text="テスト",textcolor=text_color_set, style=label.style_labelup)
    var label11 = label.new(bar_index , 60, text="テスト",textcolor=text_color_set, style=label.style_labeldown)
    var label12 = label.new(bar_index , 40, text="テスト",textcolor=text_color_set, style=label.style_square)
    var label13 = label.new(bar_index , 20, text="テスト",textcolor=text_color_set, style=label.style_diamond)

if barstate.islast and line_draw

    var line1 = line.new(time , 120, time+(time-time[1])*5 ,120 , xloc=xloc.bar_time, style=line.style_solid,width=5)
    var line2 = line.new(time , 100, time+(time-time[1])*5 ,100 , xloc=xloc.bar_time, style=line.style_dotted,width=5)
    var line3 = line.new(time , 80, time+(time-time[1])*5 ,80 , xloc=xloc.bar_time, style=line.style_dashed,width=5)
    var line4 = line.new(time , 60, time+(time-time[1])*5 ,60 , xloc=xloc.bar_time, style=line.style_arrow_left,width=5)
    var line5 = line.new(time , 40, time+(time-time[1])*5 ,40 , xloc=xloc.bar_time, style=line.style_arrow_right,width=5)
    var line6 = line.new(time , 20, time+(time-time[1])*5 ,20 , xloc=xloc.bar_time, style=line.style_arrow_both,width=5)
/*コード内行数*/ /*コード内全選択*/