callmekohei's blog

callmekoheiのひとりごと

ポンドのIMMポジションのCSVデーターの作成方法

Summary

ポンドのIMMポジションのデーターを作成する方法

データーの形式

下記のcsvデーターを作成する

日付、ロング枚数、ショート枚数

データーの場所

www.cftc.gov

Futures Only Reports:
The complete Commitments of Traders Futures Only reports file from 1986 is included by year.

前年までの一括データーと最新年度のデーターをダウンロードする。

textをダウンロードする。


f:id:callmekohei00:20170823105811p:plain

CSVデーターの作成方法(前年度までの一括データー)

解凍したデーター(FUT86_16.txt)からcsvデーターを作成する

cat FUT86_16.txt \
| cut -f 1,3,9,10 -d ',' \
| grep -E 'BRITISH POUND STERLING - CHICAGO MERCANTILE EXCHANGE|BRITISH POUND STERLING- NEW - INTERNATIONAL MONETARY MARKET' \
| cut -f 2,3,4 -d ',' \
| tr '-' '/' \
| tr -d ' ' \
| sort -t, -k 1 -r \
> past.csv

CSVデーターの作成方法(今年度のデーター)

解凍したデーター(annual.txt)からcsvデーターを作成する

cat annual.txt \
| cut -f 1,3,9,10 -d ',' \
| grep -E 'BRITISH POUND STERLING - CHICAGO MERCANTILE EXCHANGE|BRITISH POUND STERLING- NEW - INTERNATIONAL MONETARY MARKET' \
| cut -f 2,3,4 -d ',' \
| tr '-' '/' \
| tr -d ' ' \
| sort -t, -k 1 -r \
> annual.csv

上記2つのCSVデーターを一つのCSVデーターにする

cat past.csv annual.csv | sort -t, -k 1 -r > IMM_GBP.csv

活用方法として・・・

MetaTrader4に表示できる

f:id:callmekohei00:20170823110337p:plain

@rondojさんのインジゲーターが必要

fx-dollaryen.seesaa.net

補足

4つの通貨のデーター取得 AUD,EUR,GBP,JPY

(その1)下記のコードをabc.bashとして作成。

# create past csv

cat FUT86_16.txt \
| cut -f 1,3,9,10 -d ',' \
| grep -E 'AUSTRALIAN DOLLARS - INTERNATIONAL MONETARY MARKET
          |AUSTRALIAN DOLLARS - CHICAGO MERCANTILE EXCHANGE
          |AUSTRALIAN DOLLAR - CHICAGO MERCANTILE EXCHANGE' \
| cut -f 2,3,4 -d ',' \
| tr '-' '/' \
| tr -d ' ' \
| sort -t, -k 1 -r \
> past_AUD.csv


cat FUT86_16.txt \
| cut -f 1,3,9,10 -d ',' \
| grep -E 'EURO FX - INTERNATIONAL MONETARY MARKET
          |EURO FX - CHICAGO MERCANTILE EXCHANGE' \
| cut -f 2,3,4 -d ',' \
| tr '-' '/' \
| tr -d ' ' \
| sort -t, -k 1 -r \
> past_EUR.csv


cat FUT86_16.txt \
| cut -f 1,3,9,10 -d ',' \
| grep -E 'BRITISH POUND STERLING - CHICAGO MERCANTILE EXCHANGE
          |BRITISH POUND STERLING- NEW - INTERNATIONAL MONETARY MARKET' \
| cut -f 2,3,4 -d ',' \
| tr '-' '/' \
| tr -d ' ' \
| sort -t, -k 1 -r \
> past_GBP.csv


cat FUT86_16.txt \
| cut -f 1,3,9,10 -d ',' \
| grep -E 'JAPANESE YEN - CHICAGO MERCANTILE EXCHANGE
          |JAPANESE YEN - INTERNATIONAL MONETARY MARKET' \
| cut -f 2,3,4 -d ',' \
| tr '-' '/' \
| tr -d ' ' \
| sort -t, -k 1 -r \
> past_JPY.csv


# create this year csv

cat annual.txt \
| cut -f 1,3,9,10 -d ',' \
| grep -E 'AUSTRALIAN DOLLARS - INTERNATIONAL MONETARY MARKET
          |AUSTRALIAN DOLLARS - CHICAGO MERCANTILE EXCHANGE
          |AUSTRALIAN DOLLAR - CHICAGO MERCANTILE EXCHANGE' \
| cut -f 2,3,4 -d ',' \
| tr '-' '/' \
| tr -d ' ' \
| sort -t, -k 1 -r \
> thisYear_AUD.csv


cat annual.txt \
| cut -f 1,3,9,10 -d ',' \
| grep -E 'EURO FX - INTERNATIONAL MONETARY MARKET
          |EURO FX - CHICAGO MERCANTILE EXCHANGE' \
| cut -f 2,3,4 -d ',' \
| tr '-' '/' \
| tr -d ' ' \
| sort -t, -k 1 -r \
> thisYear_EUR.csv


cat annual.txt \
| cut -f 1,3,9,10 -d ',' \
| grep -E 'BRITISH POUND STERLING - CHICAGO MERCANTILE EXCHANGE
          |BRITISH POUND STERLING- NEW - INTERNATIONAL MONETARY MARKET' \
| cut -f 2,3,4 -d ',' \
| tr '-' '/' \
| tr -d ' ' \
| sort -t, -k 1 -r \
> thisYear_GBP.csv


cat annual.txt \
| cut -f 1,3,9,10 -d ',' \
| grep -E 'JAPANESE YEN - CHICAGO MERCANTILE EXCHANGE
          |JAPANESE YEN - INTERNATIONAL MONETARY MARKET' \
| cut -f 2,3,4 -d ',' \
| tr '-' '/' \
| tr -d ' ' \
| sort -t, -k 1 -r \
> thisYear_JPY.csv

# concatenate files
cat past_AUD.csv thisYear_AUD.csv | sort -t, -k 1 -r > IMM_AUD.csv
cat past_EUR.csv thisYear_EUR.csv | sort -t, -k 1 -r > IMM_EUR.csv
cat past_GBP.csv thisYear_GBP.csv | sort -t, -k 1 -r > IMM_GBP.csv
cat past_JPY.csv thisYear_JPY.csv | sort -t, -k 1 -r > IMM_JPY.csv

# deletet temporary files
rm past_* thisYear_*

(その2)2つのtextデーターをダウンロードして解凍する(FUT86_16.txt, annual.txt)

(その3)csvファイルを作成する

$ bash abc.bash
$ ls *csv
IMM_AUD.csv IMM_EUR.csv IMM_GBP.csv IMM_JPY.csv