Ich habe gerade angefangen KDB vor zwei Tagen zu lernen, so könnte dies ein bisschen naiv sein.(Schließen} ohne passende Öffnung {) Fehler in KDB beim Schreiben der Funktion
Ich versuche, eine Funktion zu schreiben, die eine Eingabe nimmt, die eine Tabelle ist und eine, die ein Symbol (ein Börsenticker) ist. Ich hoffe, in der Lage sein um diese Funktion zu nutzen, um schließlich eine Liste iterieren:
table {Funktion}/(Liste der Symbole)
jedoch die Funktion in schriftlicher Form, erhalte ich einen Fehler. Die Funktion sieht wie folgt aus:
/H is a table, y is a symbol.
suffering:{[H,y] quotes: asdf (`.ceq.getQuotes;y; 2016.01.04; 14:41; 2016.01.29; 21:18;(`source`applyca`fungible`tz)!(`exegy; 0b; `officialConsolidated ;`$"America/New_York"));
w: select from aj [`date ; select OrderId, Side, Price,Market, ltime date+time from execs where RIC= y;update date:time from quotes ];
c:select date, Market, LPrice:log Price from w;
n1: select from aj[`date`Market; c; w];
n1:update realdate:`date$date from n1;
n1:update delta:{0,1_deltas x}LPrice by realdate from n1;
agg:n,n1;
argh:select goodbp: avg delta by sym from agg where bsize >asize, Side = "1";
asf:select badbp:avg delta by sym from agg where bsize < asize, Side = "1";
poof: ej[`sym;argh;asf];
H:H, poof}
Soweit ich sehen kann, diese folgt die Syntax ganz gut: die Argumente durch ein Semikolon getrennt sind, sind die Parameter in Klammern etc.
Ist es, dass ich kann keine Tabelle als Eingabe haben? Warum bin ich diesen Fehler:
„(Schließen} ohne Öffnung passende {)“
, wenn die Funktion in der Tat eine passende Öffnung hat {
Eingabeparameter sind durch Semikolon und nicht Komma getrennt. Ändere es zu -> leiden: {[H; y]. Das wird den Fehler beheben – Rahul
Auch den Code einrücken. Das könnte auch keine Übereinstimmung geben {Fehler – Rahul
Vielen Dank Rahul! Nebenfrage: Wenn ich eine Liste von Aktien "Dinge" nennen würde, würde TABLE: Leiden über Dinge lassen Sie mich durchschleifen, oder müsste ich die Liste der Aktien einzeln auflisten? –