用户定义的函数返回系列而不是值

时间:2019-03-05 09:03:54

标签: finance pine-script tradingview-api

我已经在pine脚本中定义了用户定义的函数,以获取有关某个日期的时间戳。但是执行时返回错误为

Add to Chart operation failed, reason: line 35: Cannot call `timestamp` with arguments (series, series, literal integer, literal integer, literal integer);available overloads: timestamp(integer, integer, integer, integer, integer) => integer; timestamp(string, integer, integer, integer, integer, integer) => integer;

我的代码规范:

getdate() =>
    tt = timenow - 1549238400
    yr = year(tt)
    mt = month(tt)
    dt = dayofmonth(tt)
    timestamp(yr, mt, 01, 0, 0)

value = getdate()
plot(value, color = red, linewidth = 5, title = "27", style = histogram)

我希望从现在(2019年3月5日)到29天之前的日期(2019年2月4日)具有时间戳功能。但是不知何故我要获得系列,这会导致错误。

任何帮助将不胜感激

1 个答案:

答案 0 :(得分:1)

在Pine v4中,timestamp()函数可以接受序列,并且您可以使用以下脚本获取某个日期的时间戳:

public void Update(DataTable dt, String tableName)
{
    try
    {
        SqlDataAdapter da = new SqlDataAdapter();

        using (SqlConnection connection = new SqlConnection(ConnectionString))
        {
            da.SelectCommand = new SqlCommand("SELECT * FROM " + tableName, connection);
            SqlCommandBuilder cmdBuilder = new SqlCommandBuilder(da);
            da.UpdateCommand = cmdBuilder.GetUpdateCommand(true);
            da.AcceptChangesDuringUpdate = true;

            int res = da.Update(dt);
        }
    }
    catch (Exception oEx)
    {
        System.Diagnostics.Debug.WriteLine("Ex: " + oEx);
    }
}