@marleena/trb-proto 1.0.62 → 1.0.64

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -23,9 +23,18 @@ var global =
23
23
 
24
24
  var google_protobuf_timestamp_pb = require('google-protobuf/google/protobuf/timestamp_pb.js');
25
25
  goog.object.extend(proto, google_protobuf_timestamp_pb);
26
+ var strategysearch_spec_pb = require('../strategysearch/spec_pb.js');
27
+ goog.object.extend(proto, strategysearch_spec_pb);
26
28
  goog.exportSymbol('proto.trb.strategysearch.v1.BacktestConfig', null, global);
29
+ goog.exportSymbol('proto.trb.strategysearch.v1.BacktestIndicatorPoint', null, global);
30
+ goog.exportSymbol('proto.trb.strategysearch.v1.BacktestIndicatorSeries', null, global);
27
31
  goog.exportSymbol('proto.trb.strategysearch.v1.BacktestMetrics', null, global);
32
+ goog.exportSymbol('proto.trb.strategysearch.v1.BacktestRun', null, global);
33
+ goog.exportSymbol('proto.trb.strategysearch.v1.BacktestRunListItem', null, global);
34
+ goog.exportSymbol('proto.trb.strategysearch.v1.BacktestTask', null, global);
35
+ goog.exportSymbol('proto.trb.strategysearch.v1.EquityPoint', null, global);
28
36
  goog.exportSymbol('proto.trb.strategysearch.v1.RunStatus', null, global);
37
+ goog.exportSymbol('proto.trb.strategysearch.v1.TradeRecord', null, global);
29
38
  /**
30
39
  * Generated by JsPbCodeGenerator.
31
40
  * @param {Array=} opt_data Optional initial data array, typically from a
@@ -68,6 +77,153 @@ if (goog.DEBUG && !COMPILED) {
68
77
  */
69
78
  proto.trb.strategysearch.v1.BacktestMetrics.displayName = 'proto.trb.strategysearch.v1.BacktestMetrics';
70
79
  }
80
+ /**
81
+ * Generated by JsPbCodeGenerator.
82
+ * @param {Array=} opt_data Optional initial data array, typically from a
83
+ * server response, or constructed directly in Javascript. The array is used
84
+ * in place and becomes part of the constructed object. It is not cloned.
85
+ * If no data is provided, the constructed object will be empty, but still
86
+ * valid.
87
+ * @extends {jspb.Message}
88
+ * @constructor
89
+ */
90
+ proto.trb.strategysearch.v1.EquityPoint = function(opt_data) {
91
+ jspb.Message.initialize(this, opt_data, 0, -1, null, null);
92
+ };
93
+ goog.inherits(proto.trb.strategysearch.v1.EquityPoint, jspb.Message);
94
+ if (goog.DEBUG && !COMPILED) {
95
+ /**
96
+ * @public
97
+ * @override
98
+ */
99
+ proto.trb.strategysearch.v1.EquityPoint.displayName = 'proto.trb.strategysearch.v1.EquityPoint';
100
+ }
101
+ /**
102
+ * Generated by JsPbCodeGenerator.
103
+ * @param {Array=} opt_data Optional initial data array, typically from a
104
+ * server response, or constructed directly in Javascript. The array is used
105
+ * in place and becomes part of the constructed object. It is not cloned.
106
+ * If no data is provided, the constructed object will be empty, but still
107
+ * valid.
108
+ * @extends {jspb.Message}
109
+ * @constructor
110
+ */
111
+ proto.trb.strategysearch.v1.TradeRecord = function(opt_data) {
112
+ jspb.Message.initialize(this, opt_data, 0, -1, null, null);
113
+ };
114
+ goog.inherits(proto.trb.strategysearch.v1.TradeRecord, jspb.Message);
115
+ if (goog.DEBUG && !COMPILED) {
116
+ /**
117
+ * @public
118
+ * @override
119
+ */
120
+ proto.trb.strategysearch.v1.TradeRecord.displayName = 'proto.trb.strategysearch.v1.TradeRecord';
121
+ }
122
+ /**
123
+ * Generated by JsPbCodeGenerator.
124
+ * @param {Array=} opt_data Optional initial data array, typically from a
125
+ * server response, or constructed directly in Javascript. The array is used
126
+ * in place and becomes part of the constructed object. It is not cloned.
127
+ * If no data is provided, the constructed object will be empty, but still
128
+ * valid.
129
+ * @extends {jspb.Message}
130
+ * @constructor
131
+ */
132
+ proto.trb.strategysearch.v1.BacktestIndicatorPoint = function(opt_data) {
133
+ jspb.Message.initialize(this, opt_data, 0, -1, null, null);
134
+ };
135
+ goog.inherits(proto.trb.strategysearch.v1.BacktestIndicatorPoint, jspb.Message);
136
+ if (goog.DEBUG && !COMPILED) {
137
+ /**
138
+ * @public
139
+ * @override
140
+ */
141
+ proto.trb.strategysearch.v1.BacktestIndicatorPoint.displayName = 'proto.trb.strategysearch.v1.BacktestIndicatorPoint';
142
+ }
143
+ /**
144
+ * Generated by JsPbCodeGenerator.
145
+ * @param {Array=} opt_data Optional initial data array, typically from a
146
+ * server response, or constructed directly in Javascript. The array is used
147
+ * in place and becomes part of the constructed object. It is not cloned.
148
+ * If no data is provided, the constructed object will be empty, but still
149
+ * valid.
150
+ * @extends {jspb.Message}
151
+ * @constructor
152
+ */
153
+ proto.trb.strategysearch.v1.BacktestIndicatorSeries = function(opt_data) {
154
+ jspb.Message.initialize(this, opt_data, 0, -1, proto.trb.strategysearch.v1.BacktestIndicatorSeries.repeatedFields_, null);
155
+ };
156
+ goog.inherits(proto.trb.strategysearch.v1.BacktestIndicatorSeries, jspb.Message);
157
+ if (goog.DEBUG && !COMPILED) {
158
+ /**
159
+ * @public
160
+ * @override
161
+ */
162
+ proto.trb.strategysearch.v1.BacktestIndicatorSeries.displayName = 'proto.trb.strategysearch.v1.BacktestIndicatorSeries';
163
+ }
164
+ /**
165
+ * Generated by JsPbCodeGenerator.
166
+ * @param {Array=} opt_data Optional initial data array, typically from a
167
+ * server response, or constructed directly in Javascript. The array is used
168
+ * in place and becomes part of the constructed object. It is not cloned.
169
+ * If no data is provided, the constructed object will be empty, but still
170
+ * valid.
171
+ * @extends {jspb.Message}
172
+ * @constructor
173
+ */
174
+ proto.trb.strategysearch.v1.BacktestRun = function(opt_data) {
175
+ jspb.Message.initialize(this, opt_data, 0, -1, null, null);
176
+ };
177
+ goog.inherits(proto.trb.strategysearch.v1.BacktestRun, jspb.Message);
178
+ if (goog.DEBUG && !COMPILED) {
179
+ /**
180
+ * @public
181
+ * @override
182
+ */
183
+ proto.trb.strategysearch.v1.BacktestRun.displayName = 'proto.trb.strategysearch.v1.BacktestRun';
184
+ }
185
+ /**
186
+ * Generated by JsPbCodeGenerator.
187
+ * @param {Array=} opt_data Optional initial data array, typically from a
188
+ * server response, or constructed directly in Javascript. The array is used
189
+ * in place and becomes part of the constructed object. It is not cloned.
190
+ * If no data is provided, the constructed object will be empty, but still
191
+ * valid.
192
+ * @extends {jspb.Message}
193
+ * @constructor
194
+ */
195
+ proto.trb.strategysearch.v1.BacktestRunListItem = function(opt_data) {
196
+ jspb.Message.initialize(this, opt_data, 0, -1, null, null);
197
+ };
198
+ goog.inherits(proto.trb.strategysearch.v1.BacktestRunListItem, jspb.Message);
199
+ if (goog.DEBUG && !COMPILED) {
200
+ /**
201
+ * @public
202
+ * @override
203
+ */
204
+ proto.trb.strategysearch.v1.BacktestRunListItem.displayName = 'proto.trb.strategysearch.v1.BacktestRunListItem';
205
+ }
206
+ /**
207
+ * Generated by JsPbCodeGenerator.
208
+ * @param {Array=} opt_data Optional initial data array, typically from a
209
+ * server response, or constructed directly in Javascript. The array is used
210
+ * in place and becomes part of the constructed object. It is not cloned.
211
+ * If no data is provided, the constructed object will be empty, but still
212
+ * valid.
213
+ * @extends {jspb.Message}
214
+ * @constructor
215
+ */
216
+ proto.trb.strategysearch.v1.BacktestTask = function(opt_data) {
217
+ jspb.Message.initialize(this, opt_data, 0, -1, null, null);
218
+ };
219
+ goog.inherits(proto.trb.strategysearch.v1.BacktestTask, jspb.Message);
220
+ if (goog.DEBUG && !COMPILED) {
221
+ /**
222
+ * @public
223
+ * @override
224
+ */
225
+ proto.trb.strategysearch.v1.BacktestTask.displayName = 'proto.trb.strategysearch.v1.BacktestTask';
226
+ }
71
227
 
72
228
 
73
229
 
@@ -1634,6 +1790,2171 @@ proto.trb.strategysearch.v1.BacktestMetrics.prototype.clearExtraMap = function()
1634
1790
  };
1635
1791
 
1636
1792
 
1793
+
1794
+
1795
+
1796
+ if (jspb.Message.GENERATE_TO_OBJECT) {
1797
+ /**
1798
+ * Creates an object representation of this proto.
1799
+ * Field names that are reserved in JavaScript and will be renamed to pb_name.
1800
+ * Optional fields that are not set will be set to undefined.
1801
+ * To access a reserved field use, foo.pb_<name>, eg, foo.pb_default.
1802
+ * For the list of reserved names please see:
1803
+ * net/proto2/compiler/js/internal/generator.cc#kKeyword.
1804
+ * @param {boolean=} opt_includeInstance Deprecated. whether to include the
1805
+ * JSPB instance for transitional soy proto support:
1806
+ * http://goto/soy-param-migration
1807
+ * @return {!Object}
1808
+ */
1809
+ proto.trb.strategysearch.v1.EquityPoint.prototype.toObject = function(opt_includeInstance) {
1810
+ return proto.trb.strategysearch.v1.EquityPoint.toObject(opt_includeInstance, this);
1811
+ };
1812
+
1813
+
1814
+ /**
1815
+ * Static version of the {@see toObject} method.
1816
+ * @param {boolean|undefined} includeInstance Deprecated. Whether to include
1817
+ * the JSPB instance for transitional soy proto support:
1818
+ * http://goto/soy-param-migration
1819
+ * @param {!proto.trb.strategysearch.v1.EquityPoint} msg The msg instance to transform.
1820
+ * @return {!Object}
1821
+ * @suppress {unusedLocalVariables} f is only used for nested messages
1822
+ */
1823
+ proto.trb.strategysearch.v1.EquityPoint.toObject = function(includeInstance, msg) {
1824
+ var f, obj = {
1825
+ time: (f = msg.getTime()) && google_protobuf_timestamp_pb.Timestamp.toObject(includeInstance, f),
1826
+ equity: jspb.Message.getFloatingPointFieldWithDefault(msg, 2, 0.0),
1827
+ cash: jspb.Message.getFloatingPointFieldWithDefault(msg, 3, 0.0),
1828
+ positionValue: jspb.Message.getFloatingPointFieldWithDefault(msg, 4, 0.0),
1829
+ drawdown: jspb.Message.getFloatingPointFieldWithDefault(msg, 5, 0.0),
1830
+ ret: jspb.Message.getFloatingPointFieldWithDefault(msg, 6, 0.0)
1831
+ };
1832
+
1833
+ if (includeInstance) {
1834
+ obj.$jspbMessageInstance = msg;
1835
+ }
1836
+ return obj;
1837
+ };
1838
+ }
1839
+
1840
+
1841
+ /**
1842
+ * Deserializes binary data (in protobuf wire format).
1843
+ * @param {jspb.ByteSource} bytes The bytes to deserialize.
1844
+ * @return {!proto.trb.strategysearch.v1.EquityPoint}
1845
+ */
1846
+ proto.trb.strategysearch.v1.EquityPoint.deserializeBinary = function(bytes) {
1847
+ var reader = new jspb.BinaryReader(bytes);
1848
+ var msg = new proto.trb.strategysearch.v1.EquityPoint;
1849
+ return proto.trb.strategysearch.v1.EquityPoint.deserializeBinaryFromReader(msg, reader);
1850
+ };
1851
+
1852
+
1853
+ /**
1854
+ * Deserializes binary data (in protobuf wire format) from the
1855
+ * given reader into the given message object.
1856
+ * @param {!proto.trb.strategysearch.v1.EquityPoint} msg The message object to deserialize into.
1857
+ * @param {!jspb.BinaryReader} reader The BinaryReader to use.
1858
+ * @return {!proto.trb.strategysearch.v1.EquityPoint}
1859
+ */
1860
+ proto.trb.strategysearch.v1.EquityPoint.deserializeBinaryFromReader = function(msg, reader) {
1861
+ while (reader.nextField()) {
1862
+ if (reader.isEndGroup()) {
1863
+ break;
1864
+ }
1865
+ var field = reader.getFieldNumber();
1866
+ switch (field) {
1867
+ case 1:
1868
+ var value = new google_protobuf_timestamp_pb.Timestamp;
1869
+ reader.readMessage(value,google_protobuf_timestamp_pb.Timestamp.deserializeBinaryFromReader);
1870
+ msg.setTime(value);
1871
+ break;
1872
+ case 2:
1873
+ var value = /** @type {number} */ (reader.readDouble());
1874
+ msg.setEquity(value);
1875
+ break;
1876
+ case 3:
1877
+ var value = /** @type {number} */ (reader.readDouble());
1878
+ msg.setCash(value);
1879
+ break;
1880
+ case 4:
1881
+ var value = /** @type {number} */ (reader.readDouble());
1882
+ msg.setPositionValue(value);
1883
+ break;
1884
+ case 5:
1885
+ var value = /** @type {number} */ (reader.readDouble());
1886
+ msg.setDrawdown(value);
1887
+ break;
1888
+ case 6:
1889
+ var value = /** @type {number} */ (reader.readDouble());
1890
+ msg.setRet(value);
1891
+ break;
1892
+ default:
1893
+ reader.skipField();
1894
+ break;
1895
+ }
1896
+ }
1897
+ return msg;
1898
+ };
1899
+
1900
+
1901
+ /**
1902
+ * Serializes the message to binary data (in protobuf wire format).
1903
+ * @return {!Uint8Array}
1904
+ */
1905
+ proto.trb.strategysearch.v1.EquityPoint.prototype.serializeBinary = function() {
1906
+ var writer = new jspb.BinaryWriter();
1907
+ proto.trb.strategysearch.v1.EquityPoint.serializeBinaryToWriter(this, writer);
1908
+ return writer.getResultBuffer();
1909
+ };
1910
+
1911
+
1912
+ /**
1913
+ * Serializes the given message to binary data (in protobuf wire
1914
+ * format), writing to the given BinaryWriter.
1915
+ * @param {!proto.trb.strategysearch.v1.EquityPoint} message
1916
+ * @param {!jspb.BinaryWriter} writer
1917
+ * @suppress {unusedLocalVariables} f is only used for nested messages
1918
+ */
1919
+ proto.trb.strategysearch.v1.EquityPoint.serializeBinaryToWriter = function(message, writer) {
1920
+ var f = undefined;
1921
+ f = message.getTime();
1922
+ if (f != null) {
1923
+ writer.writeMessage(
1924
+ 1,
1925
+ f,
1926
+ google_protobuf_timestamp_pb.Timestamp.serializeBinaryToWriter
1927
+ );
1928
+ }
1929
+ f = message.getEquity();
1930
+ if (f !== 0.0) {
1931
+ writer.writeDouble(
1932
+ 2,
1933
+ f
1934
+ );
1935
+ }
1936
+ f = message.getCash();
1937
+ if (f !== 0.0) {
1938
+ writer.writeDouble(
1939
+ 3,
1940
+ f
1941
+ );
1942
+ }
1943
+ f = message.getPositionValue();
1944
+ if (f !== 0.0) {
1945
+ writer.writeDouble(
1946
+ 4,
1947
+ f
1948
+ );
1949
+ }
1950
+ f = message.getDrawdown();
1951
+ if (f !== 0.0) {
1952
+ writer.writeDouble(
1953
+ 5,
1954
+ f
1955
+ );
1956
+ }
1957
+ f = message.getRet();
1958
+ if (f !== 0.0) {
1959
+ writer.writeDouble(
1960
+ 6,
1961
+ f
1962
+ );
1963
+ }
1964
+ };
1965
+
1966
+
1967
+ /**
1968
+ * optional google.protobuf.Timestamp time = 1;
1969
+ * @return {?proto.google.protobuf.Timestamp}
1970
+ */
1971
+ proto.trb.strategysearch.v1.EquityPoint.prototype.getTime = function() {
1972
+ return /** @type{?proto.google.protobuf.Timestamp} */ (
1973
+ jspb.Message.getWrapperField(this, google_protobuf_timestamp_pb.Timestamp, 1));
1974
+ };
1975
+
1976
+
1977
+ /**
1978
+ * @param {?proto.google.protobuf.Timestamp|undefined} value
1979
+ * @return {!proto.trb.strategysearch.v1.EquityPoint} returns this
1980
+ */
1981
+ proto.trb.strategysearch.v1.EquityPoint.prototype.setTime = function(value) {
1982
+ return jspb.Message.setWrapperField(this, 1, value);
1983
+ };
1984
+
1985
+
1986
+ /**
1987
+ * Clears the message field making it undefined.
1988
+ * @return {!proto.trb.strategysearch.v1.EquityPoint} returns this
1989
+ */
1990
+ proto.trb.strategysearch.v1.EquityPoint.prototype.clearTime = function() {
1991
+ return this.setTime(undefined);
1992
+ };
1993
+
1994
+
1995
+ /**
1996
+ * Returns whether this field is set.
1997
+ * @return {boolean}
1998
+ */
1999
+ proto.trb.strategysearch.v1.EquityPoint.prototype.hasTime = function() {
2000
+ return jspb.Message.getField(this, 1) != null;
2001
+ };
2002
+
2003
+
2004
+ /**
2005
+ * optional double equity = 2;
2006
+ * @return {number}
2007
+ */
2008
+ proto.trb.strategysearch.v1.EquityPoint.prototype.getEquity = function() {
2009
+ return /** @type {number} */ (jspb.Message.getFloatingPointFieldWithDefault(this, 2, 0.0));
2010
+ };
2011
+
2012
+
2013
+ /**
2014
+ * @param {number} value
2015
+ * @return {!proto.trb.strategysearch.v1.EquityPoint} returns this
2016
+ */
2017
+ proto.trb.strategysearch.v1.EquityPoint.prototype.setEquity = function(value) {
2018
+ return jspb.Message.setProto3FloatField(this, 2, value);
2019
+ };
2020
+
2021
+
2022
+ /**
2023
+ * optional double cash = 3;
2024
+ * @return {number}
2025
+ */
2026
+ proto.trb.strategysearch.v1.EquityPoint.prototype.getCash = function() {
2027
+ return /** @type {number} */ (jspb.Message.getFloatingPointFieldWithDefault(this, 3, 0.0));
2028
+ };
2029
+
2030
+
2031
+ /**
2032
+ * @param {number} value
2033
+ * @return {!proto.trb.strategysearch.v1.EquityPoint} returns this
2034
+ */
2035
+ proto.trb.strategysearch.v1.EquityPoint.prototype.setCash = function(value) {
2036
+ return jspb.Message.setProto3FloatField(this, 3, value);
2037
+ };
2038
+
2039
+
2040
+ /**
2041
+ * optional double position_value = 4;
2042
+ * @return {number}
2043
+ */
2044
+ proto.trb.strategysearch.v1.EquityPoint.prototype.getPositionValue = function() {
2045
+ return /** @type {number} */ (jspb.Message.getFloatingPointFieldWithDefault(this, 4, 0.0));
2046
+ };
2047
+
2048
+
2049
+ /**
2050
+ * @param {number} value
2051
+ * @return {!proto.trb.strategysearch.v1.EquityPoint} returns this
2052
+ */
2053
+ proto.trb.strategysearch.v1.EquityPoint.prototype.setPositionValue = function(value) {
2054
+ return jspb.Message.setProto3FloatField(this, 4, value);
2055
+ };
2056
+
2057
+
2058
+ /**
2059
+ * optional double drawdown = 5;
2060
+ * @return {number}
2061
+ */
2062
+ proto.trb.strategysearch.v1.EquityPoint.prototype.getDrawdown = function() {
2063
+ return /** @type {number} */ (jspb.Message.getFloatingPointFieldWithDefault(this, 5, 0.0));
2064
+ };
2065
+
2066
+
2067
+ /**
2068
+ * @param {number} value
2069
+ * @return {!proto.trb.strategysearch.v1.EquityPoint} returns this
2070
+ */
2071
+ proto.trb.strategysearch.v1.EquityPoint.prototype.setDrawdown = function(value) {
2072
+ return jspb.Message.setProto3FloatField(this, 5, value);
2073
+ };
2074
+
2075
+
2076
+ /**
2077
+ * optional double ret = 6;
2078
+ * @return {number}
2079
+ */
2080
+ proto.trb.strategysearch.v1.EquityPoint.prototype.getRet = function() {
2081
+ return /** @type {number} */ (jspb.Message.getFloatingPointFieldWithDefault(this, 6, 0.0));
2082
+ };
2083
+
2084
+
2085
+ /**
2086
+ * @param {number} value
2087
+ * @return {!proto.trb.strategysearch.v1.EquityPoint} returns this
2088
+ */
2089
+ proto.trb.strategysearch.v1.EquityPoint.prototype.setRet = function(value) {
2090
+ return jspb.Message.setProto3FloatField(this, 6, value);
2091
+ };
2092
+
2093
+
2094
+
2095
+
2096
+
2097
+ if (jspb.Message.GENERATE_TO_OBJECT) {
2098
+ /**
2099
+ * Creates an object representation of this proto.
2100
+ * Field names that are reserved in JavaScript and will be renamed to pb_name.
2101
+ * Optional fields that are not set will be set to undefined.
2102
+ * To access a reserved field use, foo.pb_<name>, eg, foo.pb_default.
2103
+ * For the list of reserved names please see:
2104
+ * net/proto2/compiler/js/internal/generator.cc#kKeyword.
2105
+ * @param {boolean=} opt_includeInstance Deprecated. whether to include the
2106
+ * JSPB instance for transitional soy proto support:
2107
+ * http://goto/soy-param-migration
2108
+ * @return {!Object}
2109
+ */
2110
+ proto.trb.strategysearch.v1.TradeRecord.prototype.toObject = function(opt_includeInstance) {
2111
+ return proto.trb.strategysearch.v1.TradeRecord.toObject(opt_includeInstance, this);
2112
+ };
2113
+
2114
+
2115
+ /**
2116
+ * Static version of the {@see toObject} method.
2117
+ * @param {boolean|undefined} includeInstance Deprecated. Whether to include
2118
+ * the JSPB instance for transitional soy proto support:
2119
+ * http://goto/soy-param-migration
2120
+ * @param {!proto.trb.strategysearch.v1.TradeRecord} msg The msg instance to transform.
2121
+ * @return {!Object}
2122
+ * @suppress {unusedLocalVariables} f is only used for nested messages
2123
+ */
2124
+ proto.trb.strategysearch.v1.TradeRecord.toObject = function(includeInstance, msg) {
2125
+ var f, obj = {
2126
+ tradeId: jspb.Message.getFieldWithDefault(msg, 1, 0),
2127
+ isLong: jspb.Message.getBooleanFieldWithDefault(msg, 2, false),
2128
+ entryTime: (f = msg.getEntryTime()) && google_protobuf_timestamp_pb.Timestamp.toObject(includeInstance, f),
2129
+ entryPrice: jspb.Message.getFloatingPointFieldWithDefault(msg, 4, 0.0),
2130
+ exitTime: (f = msg.getExitTime()) && google_protobuf_timestamp_pb.Timestamp.toObject(includeInstance, f),
2131
+ exitPrice: jspb.Message.getFloatingPointFieldWithDefault(msg, 6, 0.0),
2132
+ size: jspb.Message.getFloatingPointFieldWithDefault(msg, 7, 0.0),
2133
+ pnl: jspb.Message.getFloatingPointFieldWithDefault(msg, 8, 0.0),
2134
+ pnlPct: jspb.Message.getFloatingPointFieldWithDefault(msg, 9, 0.0),
2135
+ barsHeld: jspb.Message.getFieldWithDefault(msg, 10, 0),
2136
+ mae: jspb.Message.getFloatingPointFieldWithDefault(msg, 11, 0.0),
2137
+ mfe: jspb.Message.getFloatingPointFieldWithDefault(msg, 12, 0.0),
2138
+ entryReason: jspb.Message.getFieldWithDefault(msg, 13, ""),
2139
+ exitReason: jspb.Message.getFieldWithDefault(msg, 14, "")
2140
+ };
2141
+
2142
+ if (includeInstance) {
2143
+ obj.$jspbMessageInstance = msg;
2144
+ }
2145
+ return obj;
2146
+ };
2147
+ }
2148
+
2149
+
2150
+ /**
2151
+ * Deserializes binary data (in protobuf wire format).
2152
+ * @param {jspb.ByteSource} bytes The bytes to deserialize.
2153
+ * @return {!proto.trb.strategysearch.v1.TradeRecord}
2154
+ */
2155
+ proto.trb.strategysearch.v1.TradeRecord.deserializeBinary = function(bytes) {
2156
+ var reader = new jspb.BinaryReader(bytes);
2157
+ var msg = new proto.trb.strategysearch.v1.TradeRecord;
2158
+ return proto.trb.strategysearch.v1.TradeRecord.deserializeBinaryFromReader(msg, reader);
2159
+ };
2160
+
2161
+
2162
+ /**
2163
+ * Deserializes binary data (in protobuf wire format) from the
2164
+ * given reader into the given message object.
2165
+ * @param {!proto.trb.strategysearch.v1.TradeRecord} msg The message object to deserialize into.
2166
+ * @param {!jspb.BinaryReader} reader The BinaryReader to use.
2167
+ * @return {!proto.trb.strategysearch.v1.TradeRecord}
2168
+ */
2169
+ proto.trb.strategysearch.v1.TradeRecord.deserializeBinaryFromReader = function(msg, reader) {
2170
+ while (reader.nextField()) {
2171
+ if (reader.isEndGroup()) {
2172
+ break;
2173
+ }
2174
+ var field = reader.getFieldNumber();
2175
+ switch (field) {
2176
+ case 1:
2177
+ var value = /** @type {number} */ (reader.readUint32());
2178
+ msg.setTradeId(value);
2179
+ break;
2180
+ case 2:
2181
+ var value = /** @type {boolean} */ (reader.readBool());
2182
+ msg.setIsLong(value);
2183
+ break;
2184
+ case 3:
2185
+ var value = new google_protobuf_timestamp_pb.Timestamp;
2186
+ reader.readMessage(value,google_protobuf_timestamp_pb.Timestamp.deserializeBinaryFromReader);
2187
+ msg.setEntryTime(value);
2188
+ break;
2189
+ case 4:
2190
+ var value = /** @type {number} */ (reader.readDouble());
2191
+ msg.setEntryPrice(value);
2192
+ break;
2193
+ case 5:
2194
+ var value = new google_protobuf_timestamp_pb.Timestamp;
2195
+ reader.readMessage(value,google_protobuf_timestamp_pb.Timestamp.deserializeBinaryFromReader);
2196
+ msg.setExitTime(value);
2197
+ break;
2198
+ case 6:
2199
+ var value = /** @type {number} */ (reader.readDouble());
2200
+ msg.setExitPrice(value);
2201
+ break;
2202
+ case 7:
2203
+ var value = /** @type {number} */ (reader.readDouble());
2204
+ msg.setSize(value);
2205
+ break;
2206
+ case 8:
2207
+ var value = /** @type {number} */ (reader.readDouble());
2208
+ msg.setPnl(value);
2209
+ break;
2210
+ case 9:
2211
+ var value = /** @type {number} */ (reader.readDouble());
2212
+ msg.setPnlPct(value);
2213
+ break;
2214
+ case 10:
2215
+ var value = /** @type {number} */ (reader.readUint32());
2216
+ msg.setBarsHeld(value);
2217
+ break;
2218
+ case 11:
2219
+ var value = /** @type {number} */ (reader.readDouble());
2220
+ msg.setMae(value);
2221
+ break;
2222
+ case 12:
2223
+ var value = /** @type {number} */ (reader.readDouble());
2224
+ msg.setMfe(value);
2225
+ break;
2226
+ case 13:
2227
+ var value = /** @type {string} */ (reader.readString());
2228
+ msg.setEntryReason(value);
2229
+ break;
2230
+ case 14:
2231
+ var value = /** @type {string} */ (reader.readString());
2232
+ msg.setExitReason(value);
2233
+ break;
2234
+ default:
2235
+ reader.skipField();
2236
+ break;
2237
+ }
2238
+ }
2239
+ return msg;
2240
+ };
2241
+
2242
+
2243
+ /**
2244
+ * Serializes the message to binary data (in protobuf wire format).
2245
+ * @return {!Uint8Array}
2246
+ */
2247
+ proto.trb.strategysearch.v1.TradeRecord.prototype.serializeBinary = function() {
2248
+ var writer = new jspb.BinaryWriter();
2249
+ proto.trb.strategysearch.v1.TradeRecord.serializeBinaryToWriter(this, writer);
2250
+ return writer.getResultBuffer();
2251
+ };
2252
+
2253
+
2254
+ /**
2255
+ * Serializes the given message to binary data (in protobuf wire
2256
+ * format), writing to the given BinaryWriter.
2257
+ * @param {!proto.trb.strategysearch.v1.TradeRecord} message
2258
+ * @param {!jspb.BinaryWriter} writer
2259
+ * @suppress {unusedLocalVariables} f is only used for nested messages
2260
+ */
2261
+ proto.trb.strategysearch.v1.TradeRecord.serializeBinaryToWriter = function(message, writer) {
2262
+ var f = undefined;
2263
+ f = message.getTradeId();
2264
+ if (f !== 0) {
2265
+ writer.writeUint32(
2266
+ 1,
2267
+ f
2268
+ );
2269
+ }
2270
+ f = message.getIsLong();
2271
+ if (f) {
2272
+ writer.writeBool(
2273
+ 2,
2274
+ f
2275
+ );
2276
+ }
2277
+ f = message.getEntryTime();
2278
+ if (f != null) {
2279
+ writer.writeMessage(
2280
+ 3,
2281
+ f,
2282
+ google_protobuf_timestamp_pb.Timestamp.serializeBinaryToWriter
2283
+ );
2284
+ }
2285
+ f = message.getEntryPrice();
2286
+ if (f !== 0.0) {
2287
+ writer.writeDouble(
2288
+ 4,
2289
+ f
2290
+ );
2291
+ }
2292
+ f = message.getExitTime();
2293
+ if (f != null) {
2294
+ writer.writeMessage(
2295
+ 5,
2296
+ f,
2297
+ google_protobuf_timestamp_pb.Timestamp.serializeBinaryToWriter
2298
+ );
2299
+ }
2300
+ f = message.getExitPrice();
2301
+ if (f !== 0.0) {
2302
+ writer.writeDouble(
2303
+ 6,
2304
+ f
2305
+ );
2306
+ }
2307
+ f = message.getSize();
2308
+ if (f !== 0.0) {
2309
+ writer.writeDouble(
2310
+ 7,
2311
+ f
2312
+ );
2313
+ }
2314
+ f = message.getPnl();
2315
+ if (f !== 0.0) {
2316
+ writer.writeDouble(
2317
+ 8,
2318
+ f
2319
+ );
2320
+ }
2321
+ f = message.getPnlPct();
2322
+ if (f !== 0.0) {
2323
+ writer.writeDouble(
2324
+ 9,
2325
+ f
2326
+ );
2327
+ }
2328
+ f = message.getBarsHeld();
2329
+ if (f !== 0) {
2330
+ writer.writeUint32(
2331
+ 10,
2332
+ f
2333
+ );
2334
+ }
2335
+ f = message.getMae();
2336
+ if (f !== 0.0) {
2337
+ writer.writeDouble(
2338
+ 11,
2339
+ f
2340
+ );
2341
+ }
2342
+ f = message.getMfe();
2343
+ if (f !== 0.0) {
2344
+ writer.writeDouble(
2345
+ 12,
2346
+ f
2347
+ );
2348
+ }
2349
+ f = message.getEntryReason();
2350
+ if (f.length > 0) {
2351
+ writer.writeString(
2352
+ 13,
2353
+ f
2354
+ );
2355
+ }
2356
+ f = message.getExitReason();
2357
+ if (f.length > 0) {
2358
+ writer.writeString(
2359
+ 14,
2360
+ f
2361
+ );
2362
+ }
2363
+ };
2364
+
2365
+
2366
+ /**
2367
+ * optional uint32 trade_id = 1;
2368
+ * @return {number}
2369
+ */
2370
+ proto.trb.strategysearch.v1.TradeRecord.prototype.getTradeId = function() {
2371
+ return /** @type {number} */ (jspb.Message.getFieldWithDefault(this, 1, 0));
2372
+ };
2373
+
2374
+
2375
+ /**
2376
+ * @param {number} value
2377
+ * @return {!proto.trb.strategysearch.v1.TradeRecord} returns this
2378
+ */
2379
+ proto.trb.strategysearch.v1.TradeRecord.prototype.setTradeId = function(value) {
2380
+ return jspb.Message.setProto3IntField(this, 1, value);
2381
+ };
2382
+
2383
+
2384
+ /**
2385
+ * optional bool is_long = 2;
2386
+ * @return {boolean}
2387
+ */
2388
+ proto.trb.strategysearch.v1.TradeRecord.prototype.getIsLong = function() {
2389
+ return /** @type {boolean} */ (jspb.Message.getBooleanFieldWithDefault(this, 2, false));
2390
+ };
2391
+
2392
+
2393
+ /**
2394
+ * @param {boolean} value
2395
+ * @return {!proto.trb.strategysearch.v1.TradeRecord} returns this
2396
+ */
2397
+ proto.trb.strategysearch.v1.TradeRecord.prototype.setIsLong = function(value) {
2398
+ return jspb.Message.setProto3BooleanField(this, 2, value);
2399
+ };
2400
+
2401
+
2402
+ /**
2403
+ * optional google.protobuf.Timestamp entry_time = 3;
2404
+ * @return {?proto.google.protobuf.Timestamp}
2405
+ */
2406
+ proto.trb.strategysearch.v1.TradeRecord.prototype.getEntryTime = function() {
2407
+ return /** @type{?proto.google.protobuf.Timestamp} */ (
2408
+ jspb.Message.getWrapperField(this, google_protobuf_timestamp_pb.Timestamp, 3));
2409
+ };
2410
+
2411
+
2412
+ /**
2413
+ * @param {?proto.google.protobuf.Timestamp|undefined} value
2414
+ * @return {!proto.trb.strategysearch.v1.TradeRecord} returns this
2415
+ */
2416
+ proto.trb.strategysearch.v1.TradeRecord.prototype.setEntryTime = function(value) {
2417
+ return jspb.Message.setWrapperField(this, 3, value);
2418
+ };
2419
+
2420
+
2421
+ /**
2422
+ * Clears the message field making it undefined.
2423
+ * @return {!proto.trb.strategysearch.v1.TradeRecord} returns this
2424
+ */
2425
+ proto.trb.strategysearch.v1.TradeRecord.prototype.clearEntryTime = function() {
2426
+ return this.setEntryTime(undefined);
2427
+ };
2428
+
2429
+
2430
+ /**
2431
+ * Returns whether this field is set.
2432
+ * @return {boolean}
2433
+ */
2434
+ proto.trb.strategysearch.v1.TradeRecord.prototype.hasEntryTime = function() {
2435
+ return jspb.Message.getField(this, 3) != null;
2436
+ };
2437
+
2438
+
2439
+ /**
2440
+ * optional double entry_price = 4;
2441
+ * @return {number}
2442
+ */
2443
+ proto.trb.strategysearch.v1.TradeRecord.prototype.getEntryPrice = function() {
2444
+ return /** @type {number} */ (jspb.Message.getFloatingPointFieldWithDefault(this, 4, 0.0));
2445
+ };
2446
+
2447
+
2448
+ /**
2449
+ * @param {number} value
2450
+ * @return {!proto.trb.strategysearch.v1.TradeRecord} returns this
2451
+ */
2452
+ proto.trb.strategysearch.v1.TradeRecord.prototype.setEntryPrice = function(value) {
2453
+ return jspb.Message.setProto3FloatField(this, 4, value);
2454
+ };
2455
+
2456
+
2457
+ /**
2458
+ * optional google.protobuf.Timestamp exit_time = 5;
2459
+ * @return {?proto.google.protobuf.Timestamp}
2460
+ */
2461
+ proto.trb.strategysearch.v1.TradeRecord.prototype.getExitTime = function() {
2462
+ return /** @type{?proto.google.protobuf.Timestamp} */ (
2463
+ jspb.Message.getWrapperField(this, google_protobuf_timestamp_pb.Timestamp, 5));
2464
+ };
2465
+
2466
+
2467
+ /**
2468
+ * @param {?proto.google.protobuf.Timestamp|undefined} value
2469
+ * @return {!proto.trb.strategysearch.v1.TradeRecord} returns this
2470
+ */
2471
+ proto.trb.strategysearch.v1.TradeRecord.prototype.setExitTime = function(value) {
2472
+ return jspb.Message.setWrapperField(this, 5, value);
2473
+ };
2474
+
2475
+
2476
+ /**
2477
+ * Clears the message field making it undefined.
2478
+ * @return {!proto.trb.strategysearch.v1.TradeRecord} returns this
2479
+ */
2480
+ proto.trb.strategysearch.v1.TradeRecord.prototype.clearExitTime = function() {
2481
+ return this.setExitTime(undefined);
2482
+ };
2483
+
2484
+
2485
+ /**
2486
+ * Returns whether this field is set.
2487
+ * @return {boolean}
2488
+ */
2489
+ proto.trb.strategysearch.v1.TradeRecord.prototype.hasExitTime = function() {
2490
+ return jspb.Message.getField(this, 5) != null;
2491
+ };
2492
+
2493
+
2494
+ /**
2495
+ * optional double exit_price = 6;
2496
+ * @return {number}
2497
+ */
2498
+ proto.trb.strategysearch.v1.TradeRecord.prototype.getExitPrice = function() {
2499
+ return /** @type {number} */ (jspb.Message.getFloatingPointFieldWithDefault(this, 6, 0.0));
2500
+ };
2501
+
2502
+
2503
+ /**
2504
+ * @param {number} value
2505
+ * @return {!proto.trb.strategysearch.v1.TradeRecord} returns this
2506
+ */
2507
+ proto.trb.strategysearch.v1.TradeRecord.prototype.setExitPrice = function(value) {
2508
+ return jspb.Message.setProto3FloatField(this, 6, value);
2509
+ };
2510
+
2511
+
2512
+ /**
2513
+ * optional double size = 7;
2514
+ * @return {number}
2515
+ */
2516
+ proto.trb.strategysearch.v1.TradeRecord.prototype.getSize = function() {
2517
+ return /** @type {number} */ (jspb.Message.getFloatingPointFieldWithDefault(this, 7, 0.0));
2518
+ };
2519
+
2520
+
2521
+ /**
2522
+ * @param {number} value
2523
+ * @return {!proto.trb.strategysearch.v1.TradeRecord} returns this
2524
+ */
2525
+ proto.trb.strategysearch.v1.TradeRecord.prototype.setSize = function(value) {
2526
+ return jspb.Message.setProto3FloatField(this, 7, value);
2527
+ };
2528
+
2529
+
2530
+ /**
2531
+ * optional double pnl = 8;
2532
+ * @return {number}
2533
+ */
2534
+ proto.trb.strategysearch.v1.TradeRecord.prototype.getPnl = function() {
2535
+ return /** @type {number} */ (jspb.Message.getFloatingPointFieldWithDefault(this, 8, 0.0));
2536
+ };
2537
+
2538
+
2539
+ /**
2540
+ * @param {number} value
2541
+ * @return {!proto.trb.strategysearch.v1.TradeRecord} returns this
2542
+ */
2543
+ proto.trb.strategysearch.v1.TradeRecord.prototype.setPnl = function(value) {
2544
+ return jspb.Message.setProto3FloatField(this, 8, value);
2545
+ };
2546
+
2547
+
2548
+ /**
2549
+ * optional double pnl_pct = 9;
2550
+ * @return {number}
2551
+ */
2552
+ proto.trb.strategysearch.v1.TradeRecord.prototype.getPnlPct = function() {
2553
+ return /** @type {number} */ (jspb.Message.getFloatingPointFieldWithDefault(this, 9, 0.0));
2554
+ };
2555
+
2556
+
2557
+ /**
2558
+ * @param {number} value
2559
+ * @return {!proto.trb.strategysearch.v1.TradeRecord} returns this
2560
+ */
2561
+ proto.trb.strategysearch.v1.TradeRecord.prototype.setPnlPct = function(value) {
2562
+ return jspb.Message.setProto3FloatField(this, 9, value);
2563
+ };
2564
+
2565
+
2566
+ /**
2567
+ * optional uint32 bars_held = 10;
2568
+ * @return {number}
2569
+ */
2570
+ proto.trb.strategysearch.v1.TradeRecord.prototype.getBarsHeld = function() {
2571
+ return /** @type {number} */ (jspb.Message.getFieldWithDefault(this, 10, 0));
2572
+ };
2573
+
2574
+
2575
+ /**
2576
+ * @param {number} value
2577
+ * @return {!proto.trb.strategysearch.v1.TradeRecord} returns this
2578
+ */
2579
+ proto.trb.strategysearch.v1.TradeRecord.prototype.setBarsHeld = function(value) {
2580
+ return jspb.Message.setProto3IntField(this, 10, value);
2581
+ };
2582
+
2583
+
2584
+ /**
2585
+ * optional double mae = 11;
2586
+ * @return {number}
2587
+ */
2588
+ proto.trb.strategysearch.v1.TradeRecord.prototype.getMae = function() {
2589
+ return /** @type {number} */ (jspb.Message.getFloatingPointFieldWithDefault(this, 11, 0.0));
2590
+ };
2591
+
2592
+
2593
+ /**
2594
+ * @param {number} value
2595
+ * @return {!proto.trb.strategysearch.v1.TradeRecord} returns this
2596
+ */
2597
+ proto.trb.strategysearch.v1.TradeRecord.prototype.setMae = function(value) {
2598
+ return jspb.Message.setProto3FloatField(this, 11, value);
2599
+ };
2600
+
2601
+
2602
+ /**
2603
+ * optional double mfe = 12;
2604
+ * @return {number}
2605
+ */
2606
+ proto.trb.strategysearch.v1.TradeRecord.prototype.getMfe = function() {
2607
+ return /** @type {number} */ (jspb.Message.getFloatingPointFieldWithDefault(this, 12, 0.0));
2608
+ };
2609
+
2610
+
2611
+ /**
2612
+ * @param {number} value
2613
+ * @return {!proto.trb.strategysearch.v1.TradeRecord} returns this
2614
+ */
2615
+ proto.trb.strategysearch.v1.TradeRecord.prototype.setMfe = function(value) {
2616
+ return jspb.Message.setProto3FloatField(this, 12, value);
2617
+ };
2618
+
2619
+
2620
+ /**
2621
+ * optional string entry_reason = 13;
2622
+ * @return {string}
2623
+ */
2624
+ proto.trb.strategysearch.v1.TradeRecord.prototype.getEntryReason = function() {
2625
+ return /** @type {string} */ (jspb.Message.getFieldWithDefault(this, 13, ""));
2626
+ };
2627
+
2628
+
2629
+ /**
2630
+ * @param {string} value
2631
+ * @return {!proto.trb.strategysearch.v1.TradeRecord} returns this
2632
+ */
2633
+ proto.trb.strategysearch.v1.TradeRecord.prototype.setEntryReason = function(value) {
2634
+ return jspb.Message.setProto3StringField(this, 13, value);
2635
+ };
2636
+
2637
+
2638
+ /**
2639
+ * optional string exit_reason = 14;
2640
+ * @return {string}
2641
+ */
2642
+ proto.trb.strategysearch.v1.TradeRecord.prototype.getExitReason = function() {
2643
+ return /** @type {string} */ (jspb.Message.getFieldWithDefault(this, 14, ""));
2644
+ };
2645
+
2646
+
2647
+ /**
2648
+ * @param {string} value
2649
+ * @return {!proto.trb.strategysearch.v1.TradeRecord} returns this
2650
+ */
2651
+ proto.trb.strategysearch.v1.TradeRecord.prototype.setExitReason = function(value) {
2652
+ return jspb.Message.setProto3StringField(this, 14, value);
2653
+ };
2654
+
2655
+
2656
+
2657
+
2658
+
2659
+ if (jspb.Message.GENERATE_TO_OBJECT) {
2660
+ /**
2661
+ * Creates an object representation of this proto.
2662
+ * Field names that are reserved in JavaScript and will be renamed to pb_name.
2663
+ * Optional fields that are not set will be set to undefined.
2664
+ * To access a reserved field use, foo.pb_<name>, eg, foo.pb_default.
2665
+ * For the list of reserved names please see:
2666
+ * net/proto2/compiler/js/internal/generator.cc#kKeyword.
2667
+ * @param {boolean=} opt_includeInstance Deprecated. whether to include the
2668
+ * JSPB instance for transitional soy proto support:
2669
+ * http://goto/soy-param-migration
2670
+ * @return {!Object}
2671
+ */
2672
+ proto.trb.strategysearch.v1.BacktestIndicatorPoint.prototype.toObject = function(opt_includeInstance) {
2673
+ return proto.trb.strategysearch.v1.BacktestIndicatorPoint.toObject(opt_includeInstance, this);
2674
+ };
2675
+
2676
+
2677
+ /**
2678
+ * Static version of the {@see toObject} method.
2679
+ * @param {boolean|undefined} includeInstance Deprecated. Whether to include
2680
+ * the JSPB instance for transitional soy proto support:
2681
+ * http://goto/soy-param-migration
2682
+ * @param {!proto.trb.strategysearch.v1.BacktestIndicatorPoint} msg The msg instance to transform.
2683
+ * @return {!Object}
2684
+ * @suppress {unusedLocalVariables} f is only used for nested messages
2685
+ */
2686
+ proto.trb.strategysearch.v1.BacktestIndicatorPoint.toObject = function(includeInstance, msg) {
2687
+ var f, obj = {
2688
+ time: (f = msg.getTime()) && google_protobuf_timestamp_pb.Timestamp.toObject(includeInstance, f),
2689
+ valuesMap: (f = msg.getValuesMap()) ? f.toObject(includeInstance, undefined) : []
2690
+ };
2691
+
2692
+ if (includeInstance) {
2693
+ obj.$jspbMessageInstance = msg;
2694
+ }
2695
+ return obj;
2696
+ };
2697
+ }
2698
+
2699
+
2700
+ /**
2701
+ * Deserializes binary data (in protobuf wire format).
2702
+ * @param {jspb.ByteSource} bytes The bytes to deserialize.
2703
+ * @return {!proto.trb.strategysearch.v1.BacktestIndicatorPoint}
2704
+ */
2705
+ proto.trb.strategysearch.v1.BacktestIndicatorPoint.deserializeBinary = function(bytes) {
2706
+ var reader = new jspb.BinaryReader(bytes);
2707
+ var msg = new proto.trb.strategysearch.v1.BacktestIndicatorPoint;
2708
+ return proto.trb.strategysearch.v1.BacktestIndicatorPoint.deserializeBinaryFromReader(msg, reader);
2709
+ };
2710
+
2711
+
2712
+ /**
2713
+ * Deserializes binary data (in protobuf wire format) from the
2714
+ * given reader into the given message object.
2715
+ * @param {!proto.trb.strategysearch.v1.BacktestIndicatorPoint} msg The message object to deserialize into.
2716
+ * @param {!jspb.BinaryReader} reader The BinaryReader to use.
2717
+ * @return {!proto.trb.strategysearch.v1.BacktestIndicatorPoint}
2718
+ */
2719
+ proto.trb.strategysearch.v1.BacktestIndicatorPoint.deserializeBinaryFromReader = function(msg, reader) {
2720
+ while (reader.nextField()) {
2721
+ if (reader.isEndGroup()) {
2722
+ break;
2723
+ }
2724
+ var field = reader.getFieldNumber();
2725
+ switch (field) {
2726
+ case 1:
2727
+ var value = new google_protobuf_timestamp_pb.Timestamp;
2728
+ reader.readMessage(value,google_protobuf_timestamp_pb.Timestamp.deserializeBinaryFromReader);
2729
+ msg.setTime(value);
2730
+ break;
2731
+ case 2:
2732
+ var value = msg.getValuesMap();
2733
+ reader.readMessage(value, function(message, reader) {
2734
+ jspb.Map.deserializeBinary(message, reader, jspb.BinaryReader.prototype.readString, jspb.BinaryReader.prototype.readDouble, null, "", 0.0);
2735
+ });
2736
+ break;
2737
+ default:
2738
+ reader.skipField();
2739
+ break;
2740
+ }
2741
+ }
2742
+ return msg;
2743
+ };
2744
+
2745
+
2746
+ /**
2747
+ * Serializes the message to binary data (in protobuf wire format).
2748
+ * @return {!Uint8Array}
2749
+ */
2750
+ proto.trb.strategysearch.v1.BacktestIndicatorPoint.prototype.serializeBinary = function() {
2751
+ var writer = new jspb.BinaryWriter();
2752
+ proto.trb.strategysearch.v1.BacktestIndicatorPoint.serializeBinaryToWriter(this, writer);
2753
+ return writer.getResultBuffer();
2754
+ };
2755
+
2756
+
2757
+ /**
2758
+ * Serializes the given message to binary data (in protobuf wire
2759
+ * format), writing to the given BinaryWriter.
2760
+ * @param {!proto.trb.strategysearch.v1.BacktestIndicatorPoint} message
2761
+ * @param {!jspb.BinaryWriter} writer
2762
+ * @suppress {unusedLocalVariables} f is only used for nested messages
2763
+ */
2764
+ proto.trb.strategysearch.v1.BacktestIndicatorPoint.serializeBinaryToWriter = function(message, writer) {
2765
+ var f = undefined;
2766
+ f = message.getTime();
2767
+ if (f != null) {
2768
+ writer.writeMessage(
2769
+ 1,
2770
+ f,
2771
+ google_protobuf_timestamp_pb.Timestamp.serializeBinaryToWriter
2772
+ );
2773
+ }
2774
+ f = message.getValuesMap(true);
2775
+ if (f && f.getLength() > 0) {
2776
+ f.serializeBinary(2, writer, jspb.BinaryWriter.prototype.writeString, jspb.BinaryWriter.prototype.writeDouble);
2777
+ }
2778
+ };
2779
+
2780
+
2781
+ /**
2782
+ * optional google.protobuf.Timestamp time = 1;
2783
+ * @return {?proto.google.protobuf.Timestamp}
2784
+ */
2785
+ proto.trb.strategysearch.v1.BacktestIndicatorPoint.prototype.getTime = function() {
2786
+ return /** @type{?proto.google.protobuf.Timestamp} */ (
2787
+ jspb.Message.getWrapperField(this, google_protobuf_timestamp_pb.Timestamp, 1));
2788
+ };
2789
+
2790
+
2791
+ /**
2792
+ * @param {?proto.google.protobuf.Timestamp|undefined} value
2793
+ * @return {!proto.trb.strategysearch.v1.BacktestIndicatorPoint} returns this
2794
+ */
2795
+ proto.trb.strategysearch.v1.BacktestIndicatorPoint.prototype.setTime = function(value) {
2796
+ return jspb.Message.setWrapperField(this, 1, value);
2797
+ };
2798
+
2799
+
2800
+ /**
2801
+ * Clears the message field making it undefined.
2802
+ * @return {!proto.trb.strategysearch.v1.BacktestIndicatorPoint} returns this
2803
+ */
2804
+ proto.trb.strategysearch.v1.BacktestIndicatorPoint.prototype.clearTime = function() {
2805
+ return this.setTime(undefined);
2806
+ };
2807
+
2808
+
2809
+ /**
2810
+ * Returns whether this field is set.
2811
+ * @return {boolean}
2812
+ */
2813
+ proto.trb.strategysearch.v1.BacktestIndicatorPoint.prototype.hasTime = function() {
2814
+ return jspb.Message.getField(this, 1) != null;
2815
+ };
2816
+
2817
+
2818
+ /**
2819
+ * map<string, double> values = 2;
2820
+ * @param {boolean=} opt_noLazyCreate Do not create the map if
2821
+ * empty, instead returning `undefined`
2822
+ * @return {!jspb.Map<string,number>}
2823
+ */
2824
+ proto.trb.strategysearch.v1.BacktestIndicatorPoint.prototype.getValuesMap = function(opt_noLazyCreate) {
2825
+ return /** @type {!jspb.Map<string,number>} */ (
2826
+ jspb.Message.getMapField(this, 2, opt_noLazyCreate,
2827
+ null));
2828
+ };
2829
+
2830
+
2831
+ /**
2832
+ * Clears values from the map. The map will be non-null.
2833
+ * @return {!proto.trb.strategysearch.v1.BacktestIndicatorPoint} returns this
2834
+ */
2835
+ proto.trb.strategysearch.v1.BacktestIndicatorPoint.prototype.clearValuesMap = function() {
2836
+ this.getValuesMap().clear();
2837
+ return this;
2838
+ };
2839
+
2840
+
2841
+
2842
+ /**
2843
+ * List of repeated fields within this message type.
2844
+ * @private {!Array<number>}
2845
+ * @const
2846
+ */
2847
+ proto.trb.strategysearch.v1.BacktestIndicatorSeries.repeatedFields_ = [5];
2848
+
2849
+
2850
+
2851
+ if (jspb.Message.GENERATE_TO_OBJECT) {
2852
+ /**
2853
+ * Creates an object representation of this proto.
2854
+ * Field names that are reserved in JavaScript and will be renamed to pb_name.
2855
+ * Optional fields that are not set will be set to undefined.
2856
+ * To access a reserved field use, foo.pb_<name>, eg, foo.pb_default.
2857
+ * For the list of reserved names please see:
2858
+ * net/proto2/compiler/js/internal/generator.cc#kKeyword.
2859
+ * @param {boolean=} opt_includeInstance Deprecated. whether to include the
2860
+ * JSPB instance for transitional soy proto support:
2861
+ * http://goto/soy-param-migration
2862
+ * @return {!Object}
2863
+ */
2864
+ proto.trb.strategysearch.v1.BacktestIndicatorSeries.prototype.toObject = function(opt_includeInstance) {
2865
+ return proto.trb.strategysearch.v1.BacktestIndicatorSeries.toObject(opt_includeInstance, this);
2866
+ };
2867
+
2868
+
2869
+ /**
2870
+ * Static version of the {@see toObject} method.
2871
+ * @param {boolean|undefined} includeInstance Deprecated. Whether to include
2872
+ * the JSPB instance for transitional soy proto support:
2873
+ * http://goto/soy-param-migration
2874
+ * @param {!proto.trb.strategysearch.v1.BacktestIndicatorSeries} msg The msg instance to transform.
2875
+ * @return {!Object}
2876
+ * @suppress {unusedLocalVariables} f is only used for nested messages
2877
+ */
2878
+ proto.trb.strategysearch.v1.BacktestIndicatorSeries.toObject = function(includeInstance, msg) {
2879
+ var f, obj = {
2880
+ indicatorId: jspb.Message.getFieldWithDefault(msg, 1, ""),
2881
+ indicator: jspb.Message.getFieldWithDefault(msg, 2, ""),
2882
+ outputKey: jspb.Message.getFieldWithDefault(msg, 3, ""),
2883
+ overlay: jspb.Message.getBooleanFieldWithDefault(msg, 4, false),
2884
+ pointsList: jspb.Message.toObjectList(msg.getPointsList(),
2885
+ proto.trb.strategysearch.v1.BacktestIndicatorPoint.toObject, includeInstance)
2886
+ };
2887
+
2888
+ if (includeInstance) {
2889
+ obj.$jspbMessageInstance = msg;
2890
+ }
2891
+ return obj;
2892
+ };
2893
+ }
2894
+
2895
+
2896
+ /**
2897
+ * Deserializes binary data (in protobuf wire format).
2898
+ * @param {jspb.ByteSource} bytes The bytes to deserialize.
2899
+ * @return {!proto.trb.strategysearch.v1.BacktestIndicatorSeries}
2900
+ */
2901
+ proto.trb.strategysearch.v1.BacktestIndicatorSeries.deserializeBinary = function(bytes) {
2902
+ var reader = new jspb.BinaryReader(bytes);
2903
+ var msg = new proto.trb.strategysearch.v1.BacktestIndicatorSeries;
2904
+ return proto.trb.strategysearch.v1.BacktestIndicatorSeries.deserializeBinaryFromReader(msg, reader);
2905
+ };
2906
+
2907
+
2908
+ /**
2909
+ * Deserializes binary data (in protobuf wire format) from the
2910
+ * given reader into the given message object.
2911
+ * @param {!proto.trb.strategysearch.v1.BacktestIndicatorSeries} msg The message object to deserialize into.
2912
+ * @param {!jspb.BinaryReader} reader The BinaryReader to use.
2913
+ * @return {!proto.trb.strategysearch.v1.BacktestIndicatorSeries}
2914
+ */
2915
+ proto.trb.strategysearch.v1.BacktestIndicatorSeries.deserializeBinaryFromReader = function(msg, reader) {
2916
+ while (reader.nextField()) {
2917
+ if (reader.isEndGroup()) {
2918
+ break;
2919
+ }
2920
+ var field = reader.getFieldNumber();
2921
+ switch (field) {
2922
+ case 1:
2923
+ var value = /** @type {string} */ (reader.readString());
2924
+ msg.setIndicatorId(value);
2925
+ break;
2926
+ case 2:
2927
+ var value = /** @type {string} */ (reader.readString());
2928
+ msg.setIndicator(value);
2929
+ break;
2930
+ case 3:
2931
+ var value = /** @type {string} */ (reader.readString());
2932
+ msg.setOutputKey(value);
2933
+ break;
2934
+ case 4:
2935
+ var value = /** @type {boolean} */ (reader.readBool());
2936
+ msg.setOverlay(value);
2937
+ break;
2938
+ case 5:
2939
+ var value = new proto.trb.strategysearch.v1.BacktestIndicatorPoint;
2940
+ reader.readMessage(value,proto.trb.strategysearch.v1.BacktestIndicatorPoint.deserializeBinaryFromReader);
2941
+ msg.addPoints(value);
2942
+ break;
2943
+ default:
2944
+ reader.skipField();
2945
+ break;
2946
+ }
2947
+ }
2948
+ return msg;
2949
+ };
2950
+
2951
+
2952
+ /**
2953
+ * Serializes the message to binary data (in protobuf wire format).
2954
+ * @return {!Uint8Array}
2955
+ */
2956
+ proto.trb.strategysearch.v1.BacktestIndicatorSeries.prototype.serializeBinary = function() {
2957
+ var writer = new jspb.BinaryWriter();
2958
+ proto.trb.strategysearch.v1.BacktestIndicatorSeries.serializeBinaryToWriter(this, writer);
2959
+ return writer.getResultBuffer();
2960
+ };
2961
+
2962
+
2963
+ /**
2964
+ * Serializes the given message to binary data (in protobuf wire
2965
+ * format), writing to the given BinaryWriter.
2966
+ * @param {!proto.trb.strategysearch.v1.BacktestIndicatorSeries} message
2967
+ * @param {!jspb.BinaryWriter} writer
2968
+ * @suppress {unusedLocalVariables} f is only used for nested messages
2969
+ */
2970
+ proto.trb.strategysearch.v1.BacktestIndicatorSeries.serializeBinaryToWriter = function(message, writer) {
2971
+ var f = undefined;
2972
+ f = message.getIndicatorId();
2973
+ if (f.length > 0) {
2974
+ writer.writeString(
2975
+ 1,
2976
+ f
2977
+ );
2978
+ }
2979
+ f = message.getIndicator();
2980
+ if (f.length > 0) {
2981
+ writer.writeString(
2982
+ 2,
2983
+ f
2984
+ );
2985
+ }
2986
+ f = message.getOutputKey();
2987
+ if (f.length > 0) {
2988
+ writer.writeString(
2989
+ 3,
2990
+ f
2991
+ );
2992
+ }
2993
+ f = message.getOverlay();
2994
+ if (f) {
2995
+ writer.writeBool(
2996
+ 4,
2997
+ f
2998
+ );
2999
+ }
3000
+ f = message.getPointsList();
3001
+ if (f.length > 0) {
3002
+ writer.writeRepeatedMessage(
3003
+ 5,
3004
+ f,
3005
+ proto.trb.strategysearch.v1.BacktestIndicatorPoint.serializeBinaryToWriter
3006
+ );
3007
+ }
3008
+ };
3009
+
3010
+
3011
+ /**
3012
+ * optional string indicator_id = 1;
3013
+ * @return {string}
3014
+ */
3015
+ proto.trb.strategysearch.v1.BacktestIndicatorSeries.prototype.getIndicatorId = function() {
3016
+ return /** @type {string} */ (jspb.Message.getFieldWithDefault(this, 1, ""));
3017
+ };
3018
+
3019
+
3020
+ /**
3021
+ * @param {string} value
3022
+ * @return {!proto.trb.strategysearch.v1.BacktestIndicatorSeries} returns this
3023
+ */
3024
+ proto.trb.strategysearch.v1.BacktestIndicatorSeries.prototype.setIndicatorId = function(value) {
3025
+ return jspb.Message.setProto3StringField(this, 1, value);
3026
+ };
3027
+
3028
+
3029
+ /**
3030
+ * optional string indicator = 2;
3031
+ * @return {string}
3032
+ */
3033
+ proto.trb.strategysearch.v1.BacktestIndicatorSeries.prototype.getIndicator = function() {
3034
+ return /** @type {string} */ (jspb.Message.getFieldWithDefault(this, 2, ""));
3035
+ };
3036
+
3037
+
3038
+ /**
3039
+ * @param {string} value
3040
+ * @return {!proto.trb.strategysearch.v1.BacktestIndicatorSeries} returns this
3041
+ */
3042
+ proto.trb.strategysearch.v1.BacktestIndicatorSeries.prototype.setIndicator = function(value) {
3043
+ return jspb.Message.setProto3StringField(this, 2, value);
3044
+ };
3045
+
3046
+
3047
+ /**
3048
+ * optional string output_key = 3;
3049
+ * @return {string}
3050
+ */
3051
+ proto.trb.strategysearch.v1.BacktestIndicatorSeries.prototype.getOutputKey = function() {
3052
+ return /** @type {string} */ (jspb.Message.getFieldWithDefault(this, 3, ""));
3053
+ };
3054
+
3055
+
3056
+ /**
3057
+ * @param {string} value
3058
+ * @return {!proto.trb.strategysearch.v1.BacktestIndicatorSeries} returns this
3059
+ */
3060
+ proto.trb.strategysearch.v1.BacktestIndicatorSeries.prototype.setOutputKey = function(value) {
3061
+ return jspb.Message.setProto3StringField(this, 3, value);
3062
+ };
3063
+
3064
+
3065
+ /**
3066
+ * optional bool overlay = 4;
3067
+ * @return {boolean}
3068
+ */
3069
+ proto.trb.strategysearch.v1.BacktestIndicatorSeries.prototype.getOverlay = function() {
3070
+ return /** @type {boolean} */ (jspb.Message.getBooleanFieldWithDefault(this, 4, false));
3071
+ };
3072
+
3073
+
3074
+ /**
3075
+ * @param {boolean} value
3076
+ * @return {!proto.trb.strategysearch.v1.BacktestIndicatorSeries} returns this
3077
+ */
3078
+ proto.trb.strategysearch.v1.BacktestIndicatorSeries.prototype.setOverlay = function(value) {
3079
+ return jspb.Message.setProto3BooleanField(this, 4, value);
3080
+ };
3081
+
3082
+
3083
+ /**
3084
+ * repeated BacktestIndicatorPoint points = 5;
3085
+ * @return {!Array<!proto.trb.strategysearch.v1.BacktestIndicatorPoint>}
3086
+ */
3087
+ proto.trb.strategysearch.v1.BacktestIndicatorSeries.prototype.getPointsList = function() {
3088
+ return /** @type{!Array<!proto.trb.strategysearch.v1.BacktestIndicatorPoint>} */ (
3089
+ jspb.Message.getRepeatedWrapperField(this, proto.trb.strategysearch.v1.BacktestIndicatorPoint, 5));
3090
+ };
3091
+
3092
+
3093
+ /**
3094
+ * @param {!Array<!proto.trb.strategysearch.v1.BacktestIndicatorPoint>} value
3095
+ * @return {!proto.trb.strategysearch.v1.BacktestIndicatorSeries} returns this
3096
+ */
3097
+ proto.trb.strategysearch.v1.BacktestIndicatorSeries.prototype.setPointsList = function(value) {
3098
+ return jspb.Message.setRepeatedWrapperField(this, 5, value);
3099
+ };
3100
+
3101
+
3102
+ /**
3103
+ * @param {!proto.trb.strategysearch.v1.BacktestIndicatorPoint=} opt_value
3104
+ * @param {number=} opt_index
3105
+ * @return {!proto.trb.strategysearch.v1.BacktestIndicatorPoint}
3106
+ */
3107
+ proto.trb.strategysearch.v1.BacktestIndicatorSeries.prototype.addPoints = function(opt_value, opt_index) {
3108
+ return jspb.Message.addToRepeatedWrapperField(this, 5, opt_value, proto.trb.strategysearch.v1.BacktestIndicatorPoint, opt_index);
3109
+ };
3110
+
3111
+
3112
+ /**
3113
+ * Clears the list making it empty but non-null.
3114
+ * @return {!proto.trb.strategysearch.v1.BacktestIndicatorSeries} returns this
3115
+ */
3116
+ proto.trb.strategysearch.v1.BacktestIndicatorSeries.prototype.clearPointsList = function() {
3117
+ return this.setPointsList([]);
3118
+ };
3119
+
3120
+
3121
+
3122
+
3123
+
3124
+ if (jspb.Message.GENERATE_TO_OBJECT) {
3125
+ /**
3126
+ * Creates an object representation of this proto.
3127
+ * Field names that are reserved in JavaScript and will be renamed to pb_name.
3128
+ * Optional fields that are not set will be set to undefined.
3129
+ * To access a reserved field use, foo.pb_<name>, eg, foo.pb_default.
3130
+ * For the list of reserved names please see:
3131
+ * net/proto2/compiler/js/internal/generator.cc#kKeyword.
3132
+ * @param {boolean=} opt_includeInstance Deprecated. whether to include the
3133
+ * JSPB instance for transitional soy proto support:
3134
+ * http://goto/soy-param-migration
3135
+ * @return {!Object}
3136
+ */
3137
+ proto.trb.strategysearch.v1.BacktestRun.prototype.toObject = function(opt_includeInstance) {
3138
+ return proto.trb.strategysearch.v1.BacktestRun.toObject(opt_includeInstance, this);
3139
+ };
3140
+
3141
+
3142
+ /**
3143
+ * Static version of the {@see toObject} method.
3144
+ * @param {boolean|undefined} includeInstance Deprecated. Whether to include
3145
+ * the JSPB instance for transitional soy proto support:
3146
+ * http://goto/soy-param-migration
3147
+ * @param {!proto.trb.strategysearch.v1.BacktestRun} msg The msg instance to transform.
3148
+ * @return {!Object}
3149
+ * @suppress {unusedLocalVariables} f is only used for nested messages
3150
+ */
3151
+ proto.trb.strategysearch.v1.BacktestRun.toObject = function(includeInstance, msg) {
3152
+ var f, obj = {
3153
+ runId: jspb.Message.getFieldWithDefault(msg, 1, ""),
3154
+ strategyId: jspb.Message.getFieldWithDefault(msg, 2, ""),
3155
+ spec: (f = msg.getSpec()) && strategysearch_spec_pb.StrategySearchSpec.toObject(includeInstance, f),
3156
+ config: (f = msg.getConfig()) && proto.trb.strategysearch.v1.BacktestConfig.toObject(includeInstance, f),
3157
+ status: jspb.Message.getFieldWithDefault(msg, 5, 0),
3158
+ error: jspb.Message.getFieldWithDefault(msg, 6, ""),
3159
+ engineVersion: jspb.Message.getFieldWithDefault(msg, 7, ""),
3160
+ createdAt: (f = msg.getCreatedAt()) && google_protobuf_timestamp_pb.Timestamp.toObject(includeInstance, f),
3161
+ startedAt: (f = msg.getStartedAt()) && google_protobuf_timestamp_pb.Timestamp.toObject(includeInstance, f),
3162
+ finishedAt: (f = msg.getFinishedAt()) && google_protobuf_timestamp_pb.Timestamp.toObject(includeInstance, f)
3163
+ };
3164
+
3165
+ if (includeInstance) {
3166
+ obj.$jspbMessageInstance = msg;
3167
+ }
3168
+ return obj;
3169
+ };
3170
+ }
3171
+
3172
+
3173
+ /**
3174
+ * Deserializes binary data (in protobuf wire format).
3175
+ * @param {jspb.ByteSource} bytes The bytes to deserialize.
3176
+ * @return {!proto.trb.strategysearch.v1.BacktestRun}
3177
+ */
3178
+ proto.trb.strategysearch.v1.BacktestRun.deserializeBinary = function(bytes) {
3179
+ var reader = new jspb.BinaryReader(bytes);
3180
+ var msg = new proto.trb.strategysearch.v1.BacktestRun;
3181
+ return proto.trb.strategysearch.v1.BacktestRun.deserializeBinaryFromReader(msg, reader);
3182
+ };
3183
+
3184
+
3185
+ /**
3186
+ * Deserializes binary data (in protobuf wire format) from the
3187
+ * given reader into the given message object.
3188
+ * @param {!proto.trb.strategysearch.v1.BacktestRun} msg The message object to deserialize into.
3189
+ * @param {!jspb.BinaryReader} reader The BinaryReader to use.
3190
+ * @return {!proto.trb.strategysearch.v1.BacktestRun}
3191
+ */
3192
+ proto.trb.strategysearch.v1.BacktestRun.deserializeBinaryFromReader = function(msg, reader) {
3193
+ while (reader.nextField()) {
3194
+ if (reader.isEndGroup()) {
3195
+ break;
3196
+ }
3197
+ var field = reader.getFieldNumber();
3198
+ switch (field) {
3199
+ case 1:
3200
+ var value = /** @type {string} */ (reader.readString());
3201
+ msg.setRunId(value);
3202
+ break;
3203
+ case 2:
3204
+ var value = /** @type {string} */ (reader.readString());
3205
+ msg.setStrategyId(value);
3206
+ break;
3207
+ case 3:
3208
+ var value = new strategysearch_spec_pb.StrategySearchSpec;
3209
+ reader.readMessage(value,strategysearch_spec_pb.StrategySearchSpec.deserializeBinaryFromReader);
3210
+ msg.setSpec(value);
3211
+ break;
3212
+ case 4:
3213
+ var value = new proto.trb.strategysearch.v1.BacktestConfig;
3214
+ reader.readMessage(value,proto.trb.strategysearch.v1.BacktestConfig.deserializeBinaryFromReader);
3215
+ msg.setConfig(value);
3216
+ break;
3217
+ case 5:
3218
+ var value = /** @type {!proto.trb.strategysearch.v1.RunStatus} */ (reader.readEnum());
3219
+ msg.setStatus(value);
3220
+ break;
3221
+ case 6:
3222
+ var value = /** @type {string} */ (reader.readString());
3223
+ msg.setError(value);
3224
+ break;
3225
+ case 7:
3226
+ var value = /** @type {string} */ (reader.readString());
3227
+ msg.setEngineVersion(value);
3228
+ break;
3229
+ case 8:
3230
+ var value = new google_protobuf_timestamp_pb.Timestamp;
3231
+ reader.readMessage(value,google_protobuf_timestamp_pb.Timestamp.deserializeBinaryFromReader);
3232
+ msg.setCreatedAt(value);
3233
+ break;
3234
+ case 9:
3235
+ var value = new google_protobuf_timestamp_pb.Timestamp;
3236
+ reader.readMessage(value,google_protobuf_timestamp_pb.Timestamp.deserializeBinaryFromReader);
3237
+ msg.setStartedAt(value);
3238
+ break;
3239
+ case 10:
3240
+ var value = new google_protobuf_timestamp_pb.Timestamp;
3241
+ reader.readMessage(value,google_protobuf_timestamp_pb.Timestamp.deserializeBinaryFromReader);
3242
+ msg.setFinishedAt(value);
3243
+ break;
3244
+ default:
3245
+ reader.skipField();
3246
+ break;
3247
+ }
3248
+ }
3249
+ return msg;
3250
+ };
3251
+
3252
+
3253
+ /**
3254
+ * Serializes the message to binary data (in protobuf wire format).
3255
+ * @return {!Uint8Array}
3256
+ */
3257
+ proto.trb.strategysearch.v1.BacktestRun.prototype.serializeBinary = function() {
3258
+ var writer = new jspb.BinaryWriter();
3259
+ proto.trb.strategysearch.v1.BacktestRun.serializeBinaryToWriter(this, writer);
3260
+ return writer.getResultBuffer();
3261
+ };
3262
+
3263
+
3264
+ /**
3265
+ * Serializes the given message to binary data (in protobuf wire
3266
+ * format), writing to the given BinaryWriter.
3267
+ * @param {!proto.trb.strategysearch.v1.BacktestRun} message
3268
+ * @param {!jspb.BinaryWriter} writer
3269
+ * @suppress {unusedLocalVariables} f is only used for nested messages
3270
+ */
3271
+ proto.trb.strategysearch.v1.BacktestRun.serializeBinaryToWriter = function(message, writer) {
3272
+ var f = undefined;
3273
+ f = message.getRunId();
3274
+ if (f.length > 0) {
3275
+ writer.writeString(
3276
+ 1,
3277
+ f
3278
+ );
3279
+ }
3280
+ f = message.getStrategyId();
3281
+ if (f.length > 0) {
3282
+ writer.writeString(
3283
+ 2,
3284
+ f
3285
+ );
3286
+ }
3287
+ f = message.getSpec();
3288
+ if (f != null) {
3289
+ writer.writeMessage(
3290
+ 3,
3291
+ f,
3292
+ strategysearch_spec_pb.StrategySearchSpec.serializeBinaryToWriter
3293
+ );
3294
+ }
3295
+ f = message.getConfig();
3296
+ if (f != null) {
3297
+ writer.writeMessage(
3298
+ 4,
3299
+ f,
3300
+ proto.trb.strategysearch.v1.BacktestConfig.serializeBinaryToWriter
3301
+ );
3302
+ }
3303
+ f = message.getStatus();
3304
+ if (f !== 0.0) {
3305
+ writer.writeEnum(
3306
+ 5,
3307
+ f
3308
+ );
3309
+ }
3310
+ f = message.getError();
3311
+ if (f.length > 0) {
3312
+ writer.writeString(
3313
+ 6,
3314
+ f
3315
+ );
3316
+ }
3317
+ f = message.getEngineVersion();
3318
+ if (f.length > 0) {
3319
+ writer.writeString(
3320
+ 7,
3321
+ f
3322
+ );
3323
+ }
3324
+ f = message.getCreatedAt();
3325
+ if (f != null) {
3326
+ writer.writeMessage(
3327
+ 8,
3328
+ f,
3329
+ google_protobuf_timestamp_pb.Timestamp.serializeBinaryToWriter
3330
+ );
3331
+ }
3332
+ f = message.getStartedAt();
3333
+ if (f != null) {
3334
+ writer.writeMessage(
3335
+ 9,
3336
+ f,
3337
+ google_protobuf_timestamp_pb.Timestamp.serializeBinaryToWriter
3338
+ );
3339
+ }
3340
+ f = message.getFinishedAt();
3341
+ if (f != null) {
3342
+ writer.writeMessage(
3343
+ 10,
3344
+ f,
3345
+ google_protobuf_timestamp_pb.Timestamp.serializeBinaryToWriter
3346
+ );
3347
+ }
3348
+ };
3349
+
3350
+
3351
+ /**
3352
+ * optional string run_id = 1;
3353
+ * @return {string}
3354
+ */
3355
+ proto.trb.strategysearch.v1.BacktestRun.prototype.getRunId = function() {
3356
+ return /** @type {string} */ (jspb.Message.getFieldWithDefault(this, 1, ""));
3357
+ };
3358
+
3359
+
3360
+ /**
3361
+ * @param {string} value
3362
+ * @return {!proto.trb.strategysearch.v1.BacktestRun} returns this
3363
+ */
3364
+ proto.trb.strategysearch.v1.BacktestRun.prototype.setRunId = function(value) {
3365
+ return jspb.Message.setProto3StringField(this, 1, value);
3366
+ };
3367
+
3368
+
3369
+ /**
3370
+ * optional string strategy_id = 2;
3371
+ * @return {string}
3372
+ */
3373
+ proto.trb.strategysearch.v1.BacktestRun.prototype.getStrategyId = function() {
3374
+ return /** @type {string} */ (jspb.Message.getFieldWithDefault(this, 2, ""));
3375
+ };
3376
+
3377
+
3378
+ /**
3379
+ * @param {string} value
3380
+ * @return {!proto.trb.strategysearch.v1.BacktestRun} returns this
3381
+ */
3382
+ proto.trb.strategysearch.v1.BacktestRun.prototype.setStrategyId = function(value) {
3383
+ return jspb.Message.setProto3StringField(this, 2, value);
3384
+ };
3385
+
3386
+
3387
+ /**
3388
+ * optional StrategySearchSpec spec = 3;
3389
+ * @return {?proto.trb.strategysearch.v1.StrategySearchSpec}
3390
+ */
3391
+ proto.trb.strategysearch.v1.BacktestRun.prototype.getSpec = function() {
3392
+ return /** @type{?proto.trb.strategysearch.v1.StrategySearchSpec} */ (
3393
+ jspb.Message.getWrapperField(this, strategysearch_spec_pb.StrategySearchSpec, 3));
3394
+ };
3395
+
3396
+
3397
+ /**
3398
+ * @param {?proto.trb.strategysearch.v1.StrategySearchSpec|undefined} value
3399
+ * @return {!proto.trb.strategysearch.v1.BacktestRun} returns this
3400
+ */
3401
+ proto.trb.strategysearch.v1.BacktestRun.prototype.setSpec = function(value) {
3402
+ return jspb.Message.setWrapperField(this, 3, value);
3403
+ };
3404
+
3405
+
3406
+ /**
3407
+ * Clears the message field making it undefined.
3408
+ * @return {!proto.trb.strategysearch.v1.BacktestRun} returns this
3409
+ */
3410
+ proto.trb.strategysearch.v1.BacktestRun.prototype.clearSpec = function() {
3411
+ return this.setSpec(undefined);
3412
+ };
3413
+
3414
+
3415
+ /**
3416
+ * Returns whether this field is set.
3417
+ * @return {boolean}
3418
+ */
3419
+ proto.trb.strategysearch.v1.BacktestRun.prototype.hasSpec = function() {
3420
+ return jspb.Message.getField(this, 3) != null;
3421
+ };
3422
+
3423
+
3424
+ /**
3425
+ * optional BacktestConfig config = 4;
3426
+ * @return {?proto.trb.strategysearch.v1.BacktestConfig}
3427
+ */
3428
+ proto.trb.strategysearch.v1.BacktestRun.prototype.getConfig = function() {
3429
+ return /** @type{?proto.trb.strategysearch.v1.BacktestConfig} */ (
3430
+ jspb.Message.getWrapperField(this, proto.trb.strategysearch.v1.BacktestConfig, 4));
3431
+ };
3432
+
3433
+
3434
+ /**
3435
+ * @param {?proto.trb.strategysearch.v1.BacktestConfig|undefined} value
3436
+ * @return {!proto.trb.strategysearch.v1.BacktestRun} returns this
3437
+ */
3438
+ proto.trb.strategysearch.v1.BacktestRun.prototype.setConfig = function(value) {
3439
+ return jspb.Message.setWrapperField(this, 4, value);
3440
+ };
3441
+
3442
+
3443
+ /**
3444
+ * Clears the message field making it undefined.
3445
+ * @return {!proto.trb.strategysearch.v1.BacktestRun} returns this
3446
+ */
3447
+ proto.trb.strategysearch.v1.BacktestRun.prototype.clearConfig = function() {
3448
+ return this.setConfig(undefined);
3449
+ };
3450
+
3451
+
3452
+ /**
3453
+ * Returns whether this field is set.
3454
+ * @return {boolean}
3455
+ */
3456
+ proto.trb.strategysearch.v1.BacktestRun.prototype.hasConfig = function() {
3457
+ return jspb.Message.getField(this, 4) != null;
3458
+ };
3459
+
3460
+
3461
+ /**
3462
+ * optional RunStatus status = 5;
3463
+ * @return {!proto.trb.strategysearch.v1.RunStatus}
3464
+ */
3465
+ proto.trb.strategysearch.v1.BacktestRun.prototype.getStatus = function() {
3466
+ return /** @type {!proto.trb.strategysearch.v1.RunStatus} */ (jspb.Message.getFieldWithDefault(this, 5, 0));
3467
+ };
3468
+
3469
+
3470
+ /**
3471
+ * @param {!proto.trb.strategysearch.v1.RunStatus} value
3472
+ * @return {!proto.trb.strategysearch.v1.BacktestRun} returns this
3473
+ */
3474
+ proto.trb.strategysearch.v1.BacktestRun.prototype.setStatus = function(value) {
3475
+ return jspb.Message.setProto3EnumField(this, 5, value);
3476
+ };
3477
+
3478
+
3479
+ /**
3480
+ * optional string error = 6;
3481
+ * @return {string}
3482
+ */
3483
+ proto.trb.strategysearch.v1.BacktestRun.prototype.getError = function() {
3484
+ return /** @type {string} */ (jspb.Message.getFieldWithDefault(this, 6, ""));
3485
+ };
3486
+
3487
+
3488
+ /**
3489
+ * @param {string} value
3490
+ * @return {!proto.trb.strategysearch.v1.BacktestRun} returns this
3491
+ */
3492
+ proto.trb.strategysearch.v1.BacktestRun.prototype.setError = function(value) {
3493
+ return jspb.Message.setProto3StringField(this, 6, value);
3494
+ };
3495
+
3496
+
3497
+ /**
3498
+ * optional string engine_version = 7;
3499
+ * @return {string}
3500
+ */
3501
+ proto.trb.strategysearch.v1.BacktestRun.prototype.getEngineVersion = function() {
3502
+ return /** @type {string} */ (jspb.Message.getFieldWithDefault(this, 7, ""));
3503
+ };
3504
+
3505
+
3506
+ /**
3507
+ * @param {string} value
3508
+ * @return {!proto.trb.strategysearch.v1.BacktestRun} returns this
3509
+ */
3510
+ proto.trb.strategysearch.v1.BacktestRun.prototype.setEngineVersion = function(value) {
3511
+ return jspb.Message.setProto3StringField(this, 7, value);
3512
+ };
3513
+
3514
+
3515
+ /**
3516
+ * optional google.protobuf.Timestamp created_at = 8;
3517
+ * @return {?proto.google.protobuf.Timestamp}
3518
+ */
3519
+ proto.trb.strategysearch.v1.BacktestRun.prototype.getCreatedAt = function() {
3520
+ return /** @type{?proto.google.protobuf.Timestamp} */ (
3521
+ jspb.Message.getWrapperField(this, google_protobuf_timestamp_pb.Timestamp, 8));
3522
+ };
3523
+
3524
+
3525
+ /**
3526
+ * @param {?proto.google.protobuf.Timestamp|undefined} value
3527
+ * @return {!proto.trb.strategysearch.v1.BacktestRun} returns this
3528
+ */
3529
+ proto.trb.strategysearch.v1.BacktestRun.prototype.setCreatedAt = function(value) {
3530
+ return jspb.Message.setWrapperField(this, 8, value);
3531
+ };
3532
+
3533
+
3534
+ /**
3535
+ * Clears the message field making it undefined.
3536
+ * @return {!proto.trb.strategysearch.v1.BacktestRun} returns this
3537
+ */
3538
+ proto.trb.strategysearch.v1.BacktestRun.prototype.clearCreatedAt = function() {
3539
+ return this.setCreatedAt(undefined);
3540
+ };
3541
+
3542
+
3543
+ /**
3544
+ * Returns whether this field is set.
3545
+ * @return {boolean}
3546
+ */
3547
+ proto.trb.strategysearch.v1.BacktestRun.prototype.hasCreatedAt = function() {
3548
+ return jspb.Message.getField(this, 8) != null;
3549
+ };
3550
+
3551
+
3552
+ /**
3553
+ * optional google.protobuf.Timestamp started_at = 9;
3554
+ * @return {?proto.google.protobuf.Timestamp}
3555
+ */
3556
+ proto.trb.strategysearch.v1.BacktestRun.prototype.getStartedAt = function() {
3557
+ return /** @type{?proto.google.protobuf.Timestamp} */ (
3558
+ jspb.Message.getWrapperField(this, google_protobuf_timestamp_pb.Timestamp, 9));
3559
+ };
3560
+
3561
+
3562
+ /**
3563
+ * @param {?proto.google.protobuf.Timestamp|undefined} value
3564
+ * @return {!proto.trb.strategysearch.v1.BacktestRun} returns this
3565
+ */
3566
+ proto.trb.strategysearch.v1.BacktestRun.prototype.setStartedAt = function(value) {
3567
+ return jspb.Message.setWrapperField(this, 9, value);
3568
+ };
3569
+
3570
+
3571
+ /**
3572
+ * Clears the message field making it undefined.
3573
+ * @return {!proto.trb.strategysearch.v1.BacktestRun} returns this
3574
+ */
3575
+ proto.trb.strategysearch.v1.BacktestRun.prototype.clearStartedAt = function() {
3576
+ return this.setStartedAt(undefined);
3577
+ };
3578
+
3579
+
3580
+ /**
3581
+ * Returns whether this field is set.
3582
+ * @return {boolean}
3583
+ */
3584
+ proto.trb.strategysearch.v1.BacktestRun.prototype.hasStartedAt = function() {
3585
+ return jspb.Message.getField(this, 9) != null;
3586
+ };
3587
+
3588
+
3589
+ /**
3590
+ * optional google.protobuf.Timestamp finished_at = 10;
3591
+ * @return {?proto.google.protobuf.Timestamp}
3592
+ */
3593
+ proto.trb.strategysearch.v1.BacktestRun.prototype.getFinishedAt = function() {
3594
+ return /** @type{?proto.google.protobuf.Timestamp} */ (
3595
+ jspb.Message.getWrapperField(this, google_protobuf_timestamp_pb.Timestamp, 10));
3596
+ };
3597
+
3598
+
3599
+ /**
3600
+ * @param {?proto.google.protobuf.Timestamp|undefined} value
3601
+ * @return {!proto.trb.strategysearch.v1.BacktestRun} returns this
3602
+ */
3603
+ proto.trb.strategysearch.v1.BacktestRun.prototype.setFinishedAt = function(value) {
3604
+ return jspb.Message.setWrapperField(this, 10, value);
3605
+ };
3606
+
3607
+
3608
+ /**
3609
+ * Clears the message field making it undefined.
3610
+ * @return {!proto.trb.strategysearch.v1.BacktestRun} returns this
3611
+ */
3612
+ proto.trb.strategysearch.v1.BacktestRun.prototype.clearFinishedAt = function() {
3613
+ return this.setFinishedAt(undefined);
3614
+ };
3615
+
3616
+
3617
+ /**
3618
+ * Returns whether this field is set.
3619
+ * @return {boolean}
3620
+ */
3621
+ proto.trb.strategysearch.v1.BacktestRun.prototype.hasFinishedAt = function() {
3622
+ return jspb.Message.getField(this, 10) != null;
3623
+ };
3624
+
3625
+
3626
+
3627
+
3628
+
3629
+ if (jspb.Message.GENERATE_TO_OBJECT) {
3630
+ /**
3631
+ * Creates an object representation of this proto.
3632
+ * Field names that are reserved in JavaScript and will be renamed to pb_name.
3633
+ * Optional fields that are not set will be set to undefined.
3634
+ * To access a reserved field use, foo.pb_<name>, eg, foo.pb_default.
3635
+ * For the list of reserved names please see:
3636
+ * net/proto2/compiler/js/internal/generator.cc#kKeyword.
3637
+ * @param {boolean=} opt_includeInstance Deprecated. whether to include the
3638
+ * JSPB instance for transitional soy proto support:
3639
+ * http://goto/soy-param-migration
3640
+ * @return {!Object}
3641
+ */
3642
+ proto.trb.strategysearch.v1.BacktestRunListItem.prototype.toObject = function(opt_includeInstance) {
3643
+ return proto.trb.strategysearch.v1.BacktestRunListItem.toObject(opt_includeInstance, this);
3644
+ };
3645
+
3646
+
3647
+ /**
3648
+ * Static version of the {@see toObject} method.
3649
+ * @param {boolean|undefined} includeInstance Deprecated. Whether to include
3650
+ * the JSPB instance for transitional soy proto support:
3651
+ * http://goto/soy-param-migration
3652
+ * @param {!proto.trb.strategysearch.v1.BacktestRunListItem} msg The msg instance to transform.
3653
+ * @return {!Object}
3654
+ * @suppress {unusedLocalVariables} f is only used for nested messages
3655
+ */
3656
+ proto.trb.strategysearch.v1.BacktestRunListItem.toObject = function(includeInstance, msg) {
3657
+ var f, obj = {
3658
+ run: (f = msg.getRun()) && proto.trb.strategysearch.v1.BacktestRun.toObject(includeInstance, f),
3659
+ metrics: (f = msg.getMetrics()) && proto.trb.strategysearch.v1.BacktestMetrics.toObject(includeInstance, f)
3660
+ };
3661
+
3662
+ if (includeInstance) {
3663
+ obj.$jspbMessageInstance = msg;
3664
+ }
3665
+ return obj;
3666
+ };
3667
+ }
3668
+
3669
+
3670
+ /**
3671
+ * Deserializes binary data (in protobuf wire format).
3672
+ * @param {jspb.ByteSource} bytes The bytes to deserialize.
3673
+ * @return {!proto.trb.strategysearch.v1.BacktestRunListItem}
3674
+ */
3675
+ proto.trb.strategysearch.v1.BacktestRunListItem.deserializeBinary = function(bytes) {
3676
+ var reader = new jspb.BinaryReader(bytes);
3677
+ var msg = new proto.trb.strategysearch.v1.BacktestRunListItem;
3678
+ return proto.trb.strategysearch.v1.BacktestRunListItem.deserializeBinaryFromReader(msg, reader);
3679
+ };
3680
+
3681
+
3682
+ /**
3683
+ * Deserializes binary data (in protobuf wire format) from the
3684
+ * given reader into the given message object.
3685
+ * @param {!proto.trb.strategysearch.v1.BacktestRunListItem} msg The message object to deserialize into.
3686
+ * @param {!jspb.BinaryReader} reader The BinaryReader to use.
3687
+ * @return {!proto.trb.strategysearch.v1.BacktestRunListItem}
3688
+ */
3689
+ proto.trb.strategysearch.v1.BacktestRunListItem.deserializeBinaryFromReader = function(msg, reader) {
3690
+ while (reader.nextField()) {
3691
+ if (reader.isEndGroup()) {
3692
+ break;
3693
+ }
3694
+ var field = reader.getFieldNumber();
3695
+ switch (field) {
3696
+ case 1:
3697
+ var value = new proto.trb.strategysearch.v1.BacktestRun;
3698
+ reader.readMessage(value,proto.trb.strategysearch.v1.BacktestRun.deserializeBinaryFromReader);
3699
+ msg.setRun(value);
3700
+ break;
3701
+ case 2:
3702
+ var value = new proto.trb.strategysearch.v1.BacktestMetrics;
3703
+ reader.readMessage(value,proto.trb.strategysearch.v1.BacktestMetrics.deserializeBinaryFromReader);
3704
+ msg.setMetrics(value);
3705
+ break;
3706
+ default:
3707
+ reader.skipField();
3708
+ break;
3709
+ }
3710
+ }
3711
+ return msg;
3712
+ };
3713
+
3714
+
3715
+ /**
3716
+ * Serializes the message to binary data (in protobuf wire format).
3717
+ * @return {!Uint8Array}
3718
+ */
3719
+ proto.trb.strategysearch.v1.BacktestRunListItem.prototype.serializeBinary = function() {
3720
+ var writer = new jspb.BinaryWriter();
3721
+ proto.trb.strategysearch.v1.BacktestRunListItem.serializeBinaryToWriter(this, writer);
3722
+ return writer.getResultBuffer();
3723
+ };
3724
+
3725
+
3726
+ /**
3727
+ * Serializes the given message to binary data (in protobuf wire
3728
+ * format), writing to the given BinaryWriter.
3729
+ * @param {!proto.trb.strategysearch.v1.BacktestRunListItem} message
3730
+ * @param {!jspb.BinaryWriter} writer
3731
+ * @suppress {unusedLocalVariables} f is only used for nested messages
3732
+ */
3733
+ proto.trb.strategysearch.v1.BacktestRunListItem.serializeBinaryToWriter = function(message, writer) {
3734
+ var f = undefined;
3735
+ f = message.getRun();
3736
+ if (f != null) {
3737
+ writer.writeMessage(
3738
+ 1,
3739
+ f,
3740
+ proto.trb.strategysearch.v1.BacktestRun.serializeBinaryToWriter
3741
+ );
3742
+ }
3743
+ f = message.getMetrics();
3744
+ if (f != null) {
3745
+ writer.writeMessage(
3746
+ 2,
3747
+ f,
3748
+ proto.trb.strategysearch.v1.BacktestMetrics.serializeBinaryToWriter
3749
+ );
3750
+ }
3751
+ };
3752
+
3753
+
3754
+ /**
3755
+ * optional BacktestRun run = 1;
3756
+ * @return {?proto.trb.strategysearch.v1.BacktestRun}
3757
+ */
3758
+ proto.trb.strategysearch.v1.BacktestRunListItem.prototype.getRun = function() {
3759
+ return /** @type{?proto.trb.strategysearch.v1.BacktestRun} */ (
3760
+ jspb.Message.getWrapperField(this, proto.trb.strategysearch.v1.BacktestRun, 1));
3761
+ };
3762
+
3763
+
3764
+ /**
3765
+ * @param {?proto.trb.strategysearch.v1.BacktestRun|undefined} value
3766
+ * @return {!proto.trb.strategysearch.v1.BacktestRunListItem} returns this
3767
+ */
3768
+ proto.trb.strategysearch.v1.BacktestRunListItem.prototype.setRun = function(value) {
3769
+ return jspb.Message.setWrapperField(this, 1, value);
3770
+ };
3771
+
3772
+
3773
+ /**
3774
+ * Clears the message field making it undefined.
3775
+ * @return {!proto.trb.strategysearch.v1.BacktestRunListItem} returns this
3776
+ */
3777
+ proto.trb.strategysearch.v1.BacktestRunListItem.prototype.clearRun = function() {
3778
+ return this.setRun(undefined);
3779
+ };
3780
+
3781
+
3782
+ /**
3783
+ * Returns whether this field is set.
3784
+ * @return {boolean}
3785
+ */
3786
+ proto.trb.strategysearch.v1.BacktestRunListItem.prototype.hasRun = function() {
3787
+ return jspb.Message.getField(this, 1) != null;
3788
+ };
3789
+
3790
+
3791
+ /**
3792
+ * optional BacktestMetrics metrics = 2;
3793
+ * @return {?proto.trb.strategysearch.v1.BacktestMetrics}
3794
+ */
3795
+ proto.trb.strategysearch.v1.BacktestRunListItem.prototype.getMetrics = function() {
3796
+ return /** @type{?proto.trb.strategysearch.v1.BacktestMetrics} */ (
3797
+ jspb.Message.getWrapperField(this, proto.trb.strategysearch.v1.BacktestMetrics, 2));
3798
+ };
3799
+
3800
+
3801
+ /**
3802
+ * @param {?proto.trb.strategysearch.v1.BacktestMetrics|undefined} value
3803
+ * @return {!proto.trb.strategysearch.v1.BacktestRunListItem} returns this
3804
+ */
3805
+ proto.trb.strategysearch.v1.BacktestRunListItem.prototype.setMetrics = function(value) {
3806
+ return jspb.Message.setWrapperField(this, 2, value);
3807
+ };
3808
+
3809
+
3810
+ /**
3811
+ * Clears the message field making it undefined.
3812
+ * @return {!proto.trb.strategysearch.v1.BacktestRunListItem} returns this
3813
+ */
3814
+ proto.trb.strategysearch.v1.BacktestRunListItem.prototype.clearMetrics = function() {
3815
+ return this.setMetrics(undefined);
3816
+ };
3817
+
3818
+
3819
+ /**
3820
+ * Returns whether this field is set.
3821
+ * @return {boolean}
3822
+ */
3823
+ proto.trb.strategysearch.v1.BacktestRunListItem.prototype.hasMetrics = function() {
3824
+ return jspb.Message.getField(this, 2) != null;
3825
+ };
3826
+
3827
+
3828
+
3829
+
3830
+
3831
+ if (jspb.Message.GENERATE_TO_OBJECT) {
3832
+ /**
3833
+ * Creates an object representation of this proto.
3834
+ * Field names that are reserved in JavaScript and will be renamed to pb_name.
3835
+ * Optional fields that are not set will be set to undefined.
3836
+ * To access a reserved field use, foo.pb_<name>, eg, foo.pb_default.
3837
+ * For the list of reserved names please see:
3838
+ * net/proto2/compiler/js/internal/generator.cc#kKeyword.
3839
+ * @param {boolean=} opt_includeInstance Deprecated. whether to include the
3840
+ * JSPB instance for transitional soy proto support:
3841
+ * http://goto/soy-param-migration
3842
+ * @return {!Object}
3843
+ */
3844
+ proto.trb.strategysearch.v1.BacktestTask.prototype.toObject = function(opt_includeInstance) {
3845
+ return proto.trb.strategysearch.v1.BacktestTask.toObject(opt_includeInstance, this);
3846
+ };
3847
+
3848
+
3849
+ /**
3850
+ * Static version of the {@see toObject} method.
3851
+ * @param {boolean|undefined} includeInstance Deprecated. Whether to include
3852
+ * the JSPB instance for transitional soy proto support:
3853
+ * http://goto/soy-param-migration
3854
+ * @param {!proto.trb.strategysearch.v1.BacktestTask} msg The msg instance to transform.
3855
+ * @return {!Object}
3856
+ * @suppress {unusedLocalVariables} f is only used for nested messages
3857
+ */
3858
+ proto.trb.strategysearch.v1.BacktestTask.toObject = function(includeInstance, msg) {
3859
+ var f, obj = {
3860
+ runId: jspb.Message.getFieldWithDefault(msg, 1, "")
3861
+ };
3862
+
3863
+ if (includeInstance) {
3864
+ obj.$jspbMessageInstance = msg;
3865
+ }
3866
+ return obj;
3867
+ };
3868
+ }
3869
+
3870
+
3871
+ /**
3872
+ * Deserializes binary data (in protobuf wire format).
3873
+ * @param {jspb.ByteSource} bytes The bytes to deserialize.
3874
+ * @return {!proto.trb.strategysearch.v1.BacktestTask}
3875
+ */
3876
+ proto.trb.strategysearch.v1.BacktestTask.deserializeBinary = function(bytes) {
3877
+ var reader = new jspb.BinaryReader(bytes);
3878
+ var msg = new proto.trb.strategysearch.v1.BacktestTask;
3879
+ return proto.trb.strategysearch.v1.BacktestTask.deserializeBinaryFromReader(msg, reader);
3880
+ };
3881
+
3882
+
3883
+ /**
3884
+ * Deserializes binary data (in protobuf wire format) from the
3885
+ * given reader into the given message object.
3886
+ * @param {!proto.trb.strategysearch.v1.BacktestTask} msg The message object to deserialize into.
3887
+ * @param {!jspb.BinaryReader} reader The BinaryReader to use.
3888
+ * @return {!proto.trb.strategysearch.v1.BacktestTask}
3889
+ */
3890
+ proto.trb.strategysearch.v1.BacktestTask.deserializeBinaryFromReader = function(msg, reader) {
3891
+ while (reader.nextField()) {
3892
+ if (reader.isEndGroup()) {
3893
+ break;
3894
+ }
3895
+ var field = reader.getFieldNumber();
3896
+ switch (field) {
3897
+ case 1:
3898
+ var value = /** @type {string} */ (reader.readString());
3899
+ msg.setRunId(value);
3900
+ break;
3901
+ default:
3902
+ reader.skipField();
3903
+ break;
3904
+ }
3905
+ }
3906
+ return msg;
3907
+ };
3908
+
3909
+
3910
+ /**
3911
+ * Serializes the message to binary data (in protobuf wire format).
3912
+ * @return {!Uint8Array}
3913
+ */
3914
+ proto.trb.strategysearch.v1.BacktestTask.prototype.serializeBinary = function() {
3915
+ var writer = new jspb.BinaryWriter();
3916
+ proto.trb.strategysearch.v1.BacktestTask.serializeBinaryToWriter(this, writer);
3917
+ return writer.getResultBuffer();
3918
+ };
3919
+
3920
+
3921
+ /**
3922
+ * Serializes the given message to binary data (in protobuf wire
3923
+ * format), writing to the given BinaryWriter.
3924
+ * @param {!proto.trb.strategysearch.v1.BacktestTask} message
3925
+ * @param {!jspb.BinaryWriter} writer
3926
+ * @suppress {unusedLocalVariables} f is only used for nested messages
3927
+ */
3928
+ proto.trb.strategysearch.v1.BacktestTask.serializeBinaryToWriter = function(message, writer) {
3929
+ var f = undefined;
3930
+ f = message.getRunId();
3931
+ if (f.length > 0) {
3932
+ writer.writeString(
3933
+ 1,
3934
+ f
3935
+ );
3936
+ }
3937
+ };
3938
+
3939
+
3940
+ /**
3941
+ * optional string run_id = 1;
3942
+ * @return {string}
3943
+ */
3944
+ proto.trb.strategysearch.v1.BacktestTask.prototype.getRunId = function() {
3945
+ return /** @type {string} */ (jspb.Message.getFieldWithDefault(this, 1, ""));
3946
+ };
3947
+
3948
+
3949
+ /**
3950
+ * @param {string} value
3951
+ * @return {!proto.trb.strategysearch.v1.BacktestTask} returns this
3952
+ */
3953
+ proto.trb.strategysearch.v1.BacktestTask.prototype.setRunId = function(value) {
3954
+ return jspb.Message.setProto3StringField(this, 1, value);
3955
+ };
3956
+
3957
+
1637
3958
  /**
1638
3959
  * @enum {number}
1639
3960
  */