diff --git a/CryptoExchange.Net/Converters/SystemTextJson/ObjectStringConverter.cs b/CryptoExchange.Net/Converters/SystemTextJson/ObjectStringConverter.cs
new file mode 100644
index 0000000..d6a5078
--- /dev/null
+++ b/CryptoExchange.Net/Converters/SystemTextJson/ObjectStringConverter.cs
@@ -0,0 +1,40 @@
+using System;
+using System.Collections.Generic;
+using System.Diagnostics;
+using System.Runtime.Serialization;
+using System.Text;
+using System.Text.Json.Serialization;
+using System.Text.Json;
+using System.Globalization;
+
+namespace CryptoExchange.Net.Converters.SystemTextJson
+{
+ ///
+ ///
+ ///
+ ///
+ public class ObjectStringConverter : JsonConverter
+ {
+ ///
+ public override T? Read(ref Utf8JsonReader reader, Type typeToConvert, JsonSerializerOptions options)
+ {
+ if (reader.TokenType == JsonTokenType.Null)
+ return default;
+
+ var value = reader.GetString();
+ if (string.IsNullOrEmpty(value))
+ return default;
+
+ return (T?)JsonDocument.Parse(value).Deserialize(typeof(T));
+ }
+
+ ///
+ public override void Write(Utf8JsonWriter writer, T? value, JsonSerializerOptions options)
+ {
+ if (value is null)
+ writer.WriteStringValue("");
+
+ writer.WriteStringValue(JsonSerializer.Serialize(value, options));
+ }
+ }
+}