2017/03/22(Wed) 17:54:04 編集(投稿者)
■No83417 (shu さん) に返信
すみません。
取り敢えずは
http://k-db.com/futures/F101-0000/5m 
にあった「日経平均先物 期近限月つなぎ 5分足 時系列データ」をCSV保存し、そのデータを活用してみましたので、
もし可能でしたらそれを修正いただけないでしょうか?
このデータは5分単位なのですが、それを20分毎とか30分毎とかで設定をし表示が出来るようであれば多分OKだと思うのです。
ただ、開始もですが終了も"年月日時分"は様々ですし、データも途中で抜けてるとこもあります。
Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
        'CSVファイル読み込み  <----- http://k-db.com/futures/F101-0000/5m  など、取り敢えずは「日経平均先物 期近限月つなぎ 5分足 時系列データ」をCSV保存し、そのデータを活用してみました。
        Dim datS As Integer = -1       'データ数
        Dim dat_ymdHm(500) As String   '"年月日時分"
        Dim dat_suryo(500) As Integer  '数量
        Dim sfileM As String = "C:\Users\++++\Downloads\futures_F101-0000_5m.csv"   'CSV保存をしたファイル名
       
        Using sr As New System.IO.StreamReader(sfileM, System.Text.Encoding.Default)
            Do While Not sr.EndOfStream
                Dim da As String = sr.ReadLine     '1行全てを読み取る(ReadLineメソッド)
                Dim dat0() As String              
                dat0 = da.Split(",")               '一行を, (カンマ)で区切って項目ごとに分解
                If dat0(0) <> "日付" Then
                    If Val(dat0(7)) > 0 Then       '0 の場合はデータとしての活用意味がないため除く
                        datS = datS + 1
                        dat_ymdHm(datS) = dat0(0)        
                        dat_ymdHm(datS) = dat_ymdHm(datS) & " " & dat0(1) & ":00"   '時分
                        Mid(dat_ymdHm(datS), 5, 1) = "/" : Mid(dat_ymdHm(datS), 8, 1) = "/"  '"2016/10/11 10:24:00" などに書式を変換する
                        dat_suryo(datS) = Val(dat0(7))     '売買代金のみ数量として利用
                    End If
                End If
            Loop
            sr.Close()
        End Using
        'データの配列を逆にし時系列に変更する。(もっと良い方法があるのでしょうが)
        Dim dummy_datS As Integer = -1
        Dim dummy_dat_ymdHm(500) As String
        Dim dummy_dat_suryo(500) As Integer
        For i = datS To 0 Step -1
            dummy_datS = dummy_datS + 1
            dummy_dat_ymdHm(dummy_datS) = dat_ymdHm(i)
            dummy_dat_suryo(dummy_datS) = dat_suryo(i)
        Next
        For i = 0 To datS
            dat_ymdHm(i) = dummy_dat_ymdHm(i)
            dat_suryo(i) = dummy_dat_suryo(i)
        Next
        'チャートの作成
        Dim ds As New DataSet
        Dim dt As New DataTable
        Dim dtRow As DataRow
        '列の作成
        dt.Columns.Add("年月日時分", GetType(String))
        dt.Columns.Add("数量", GetType(Integer))
        ds.Tables.Add(dt)
        'データの追加
        For i = 0 To datS
            dtRow = ds.Tables(0).NewRow
            dtRow(0) = dat_ymdHm(i)
            dtRow(1) = dat_suryo(i)                    '売買代金を数量としてセット
            ds.Tables(0).Rows.Add(dtRow)
        Next
        'Chart1
        Chart1.DataSource = ds   'Chart に表示するデータソースを設定
        Chart1.Series.Clear()    '系列を初期化
        Dim oresen = Chart1.Series.Add("棒グラフ")
        With oresen
            .ChartType = DataVisualization.Charting.SeriesChartType.Column
            .XValueMember = "年月日時分"     ' X軸
            .YValueMembers = "数量"          ' Y軸
            .IsVisibleInLegend = False
        End With
        If False Then
            With Chart1.ChartAreas(0)
                With .AxisX
                    .LabelStyle.Format = "yyyy/MM/dd HH:mm"  ' "yyyy/MM/dd HH:mm"      "yyyy/MM/dd"日 
                    .IntervalType = DataVisualization.Charting.DateTimeIntervalType.Minutes
                    .Interval = 15
                End With
            End With
        End If</pre></pre></pre></pre>